Comment stocker une référence au type de modèle dans une autre instance de modèle
Question
C'est donc un peu d'exercice dans la méta méta .. Je veux être en mesure de référence de modèle de magasin en ligne dans une table associée à un autre modèle. Quelque chose comme ceci:
class Widget(models.Model):
related = models.Model() # data model associated with this widget
identifier = models.CharField(max_length=500) # human-friendly descriptor
Cela ne valide pas .. Je l'ai trouvé un solution acceptable , mais je me demande s'il y a une façon plus appropriée / gracieuse de le faire.
Merci, django assistants!
La solution
Si je comprends bien votre question, puis GenericForeignKey est ce que vous avez besoin. Avez-vous regardé ce?
Autres conseils
Si vous voulez juste pour maintenir le modèle réel d'un autre objet, vous pouvez simplement utiliser un foreignkey à type de contenu :
from django.contrib.contenttypes.models import ContentType
class Widget(models.Model):
related = models.ForeignKey(ContentType)
identifier = models.CharField(max_length=500) # human-friendly descriptor
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow