SORU
25 HAZİRAN 2011, CUMARTESİ


Django admin ManyToMany içi "" hayır ForeignKey var hata

Aşağıdaki modeller için Django admin kuruyorum:

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)                                 

Aşağıdaki kodu:

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)

Yönetici sayfası ** 4, sayfa eklemek için görüntülemek için çalışırken bir hata <class 'quotes.models.Tag'> has no ForeignKey to <class 'quotes.models.Quote'> diyerek gösterir. Bu bir satır ekledim daha önce hiç olmamıştı. Sorun nedir? Ne kadar doğru bir satır içi Tag eklerim?

(20 dakika bir cevap arayarak geçirdim; benzer soruları buldum ama cevapları yok benim için çalıştı.)

CEVAP
25 HAZİRAN 2011, CUMARTESİ


Admin documentation bölüm çok-çok ilişkileri ile satır içi uygulaması için adamıştır. TagInline yerine Tag kendisi için bir model olarak Quote.tags.through kullanmalısınız.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • David Tedeyev

    David Tedeye

    20 AĞUSTOS 2011
  • TechBalance

    TechBalance

    12 HAZİRAN 2011
  • WK

    WK

    9 Ocak 2006