Voici ce que je suis en train de faire, et de ne pas ...Inlines génériques Admin pour les modèles de sous-classes multi-tables cassé --- des alternatives?
J'ai un modèle de fichier qui a une relation générique à d'autres objets:
class File(models.Model):
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey()
file = models.FileField(upload_to='files/%Y/%m/%d')
# etc....
Je veux aussi avoir un sous- classe de fichier pour traiter le cas particulier des images à afficher en page, plutôt que téléchargé:
class Image(File):
file = models.ImageField(upload_to='files/%Y/%m/%d')
Tous les travaux ci-dessus très bien, y compris inline génériques du modèle de fichier, jusqu'à ce que je veux utiliser un générique-inline du modèle Image --- le proc de sauvegarde ess ne parvient pas à créer l'instance de la classe de base et déclenche donc une erreur indiquant que Image.file_ptr (la clé étrangère 'secret' de la classe de base) ne peut pas être None. Par conséquent, les encarts génériques ne prennent pas en charge correctement l'héritage multi-tables pour le moment.
Il est très probable que je rends cela plus compliqué que nécessaire, donc quelqu'un peut-il suggérer soit une solution à ce problème, soit une meilleure façon d'atteindre le même objectif?
S'il vous plaît laissez-moi savoir si vous avez besoin de plus amples explications.