Ich richte den Django-Administrator für die folgenden Modelle ein:
class Quote(models.Model):
author = models.CharField(max_length=100)
quote = models.CharField(max_length=1000)
tags = models.ManyToManyField('Tag')
class Tag(models.Model):
name = models.CharField(max_length=100)
Mit folgendem Code:
class TagInline(admin.TabularInline):
model = Tag
class QuoteAdmin(admin.ModelAdmin):
list_display = ('author', 'quote')
inlines = (TagInline,)
class TagAdmin(admin.ModelAdmin):
pass
admin.site.register(Quote, QuoteAdmin)
admin.site.register(Tag, TagAdmin)
Beim Versuch, die Administrationsseite anzuzeigen, um eine hinzuzufügen Quote
, wird auf der Seite ein Fehler angezeigt <class 'quotes.models.Tag'> has no ForeignKey to <class 'quotes.models.Quote'>
. Dies geschah nicht, bevor ich eine Inline hinzufügte. Was ist das Problem? Wie füge ich ein korrekt Tag
als Inline hinzu?
(Ich habe gut 20 Minuten damit verbracht, nach einer Antwort zu suchen. Ich habe ähnliche Fragen gefunden, aber keine ihrer Antworten hat bei mir funktioniert.)