--Confirmation de la façon de décrire les contraintes de clé externe plusieurs-à-un dans Django
On suppose que l'état de l'objet de modèle de tâche est décrit par le modèle d'état. (Décrivez une relation plusieurs-à-un entre le modèle de tâche et le modèle de statut)
Écrivez la classe de modèle d'état comme vous le feriez normalement.
models/status.py
"""
Model for status
"""
from django.db import models
class Status(models.Model):
"""
Status for Task
"""
name = models.CharField('statut', max_length=30, blank=False)
Décrire les contraintes de clé externes du côté de la classe de tâches
models/task.py
from django.db import models
from datetime import datetime
from webui.models.status import Status
class Task(models.Model):
"""
Task to do.
"""
name = models.CharField('Nom de la tâche', max_length=30, blank=False)
startTime = models.DateTimeField('Heure de début', blank=True)
endTime = models.DateTimeField('Heure de fin', blank=True, null=True)
memo = models.CharField('Note', max_length=200, blank=True)
# status = models.CharField('Statut', max_length=20, default='pas encore commencé', blank=False)
status = models.ForeignKey(Status)
status = models.ForeignKey(Status)
Cette partie décrit la relation plusieurs-à-un entre le modèle de tâche et le modèle de statut. ** Ceci complète la description de la contrainte de clé externe **
Trouvez une autre façon d'afficher n'importe quel champ sur le site d'administration. (Voulez-vous l'écrire bientôt?)
Même si l'objet Tâche est défini, l'élément d'état est "Objet d'état", ce qui est triste, corrigez ce problème.
models/status.py
from django.db import models
class Status(models.Model):
"""
Status for Task
"""
name = models.CharField('statut', max_length=30, blank=False)
def __str__(self):
return self.name
def __str__(self):
return self.name
Dans cette partie, vous pouvez définir quelles informations sont affichées en tant qu'informations du site de gestion. (Il définit simplement ce qui est affiché lorsque l'objet est appelé comme une chaîne de caractères avec str ??)
En modifiant la classe de modèle Status Lorsque l'objet de modèle de tâche est affiché à partir du site de gestion L'affichage est comme prévu.
Recommended Posts