2010-11-04 55 views
7

我在這裏與django管理網站和內聯有一些問題。我一直在搜索解決方案兩天,但沒有。Django管理員:缺少一些記錄內聯

我有兩個型號:

class Measurement(models.Model): 
    user = models.ForeignKey(User) 
    date = models.DateTimeField(auto_now_add=True) 
    # etc 

class Media(models.Model): 
    measurement = models.ForeignKey(Measurement) 
    link = models.CharField(max_length=255, blank=True) 
    description = models.TextField(blank=True) 
    # etc 

和配置管理站點:

class MediaInline(admin.StackedInline): 
    model = Media 
    extra = 0 

class MeasurementAdmin(admin.ModelAdmin): 
    inlines = [MediaInline,] 

admin.site.register(Media) 
admin.site.register(Measurement, MeasurementAdmin) 

奇怪的是:管理網站顯示的內嵌一些測量對象,並且不爲一些人。即使相關記錄在數據庫中可見,整個formset也是不可見的(它不存在)。此外,這些對象引發ValidationError: [u'ManagementForm data is missing or has been tampered with']異常。有沒有人處理過這個問題?

回答

15

在90%的情況下,我看到這是由於__unicode__方法中的錯誤,其中django在內聯模板上使用。

+0

你是對的!但它仍然是我的跆拳道。 '__unicode__'返回的字符串在模塊列表中正確顯示,並在同一端顯示一些內聯錯誤?它有可能如何? :D – Anpher 2010-11-05 08:57:32

+0

讓我們看看代碼 – 2010-11-05 10:39:20

+0

@Anpher:'__Unicode__'不應該返回一個字符串。它應該返回Unicode。 – 2013-05-06 15:56:03