J'ai un problème de poulet et d'oeuf ici. Premièrement, j'ai une classe userprofile qui s'appuie sur le modèle utilisateur par défaut de django.django: modèles avec touches inverses?
class UserProfile(models.Model):
def __unicode__(self):
return self.user.username
user = models.OneToOneField(User, unique=True)
exam = models.ForeignKey('questions.Exam', null=True)
Ensuite, j'ai une classe d'examen
class Exam(models.Model):
def __unicode__(self):
return self.id
user = models.ForeignKey(UserProfile)
Le UserProfile et les modèles d'examen sont dans différentes applications. Cependant, ils ont tous les deux des clés étrangères entre eux. Je connais son mauvais design, mais c'est mon exigence particulière dans mon cas. Cependant, la clé étrangère UserProfile à l'examen peut être nulle. Mais chaque fois que j'essaie de créer un examen dans Admin, j'obtiens une erreur en disant "UserProfile" est un champ obligatoire. Et quand j'essaye de créer l'utilisateur, l'inverse se produit. Y a-t-il un moyen de sortir de cette impasse? Ou devrais-je reconcevoir mon application?
Cela a fonctionné. Mais je vais changer mon design et le rendre plus simple. Merci. – Neo