2013-10-01 47 views
0

我寫了一個CMS和我的兩個相關的模型都是talkattachment。談話可以有很多附件。我的問題是,當用戶創建新的談話時,他們必須在單獨的窗口中以單獨的形式創建附件。挽救了兩個模型在一個管理形式

我的項目是用戶在他們創建一個新的談話,同時創造新的附件的要求。用戶最多可以包含5個附件對象。目前talk看起來像

class talk(models.Model): 
    title = models.CharField(max_length = 255) 
    ... 
    attachments = models.ManyToManyField('attachment') 

attachment看起來像

class attachment(models.Model): 
    title = models.CharField(max_length = 255) 
    link = models.URLField("Attachment URL") 

這可能嗎?

+2

類Python中應始終以大寫字母 – Brandon

+1

@Brandon說的開始,但更一般來說,http://www.python.org/dev/peps/pep-0008/。 –

回答

2

是的。你可以使用一個InlineModelAdminhttps://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.InlineModelAdmin

由於attachmentsManyToMany場,你可以做這樣的事情:

from django.contrib import admin 

class AttachmentThroughInline(admin.TabularInline): 
    model = talk.attachments.through 

class talkAdmin(admin.ModelAdmin): 
    inlines = [ 
     AttachmentThroughInline, 
    ] 
+0

謝謝。知道問題是什麼而不是在文檔中搜索什麼是令人沮喪的。 – Nanor

+0

'內聯= [AttachmentThroughInline,]'給我'未定義的名稱AttachmentThroughInline' – Nanor

+0

'AttachmentThroughInline'不得不來之前'talkAdmin' – Nanor

相關問題