我有2個多表繼承車型,如這些創建/更新形式:Django的形式:最乾的方式來組織的繼承車型
class Post(models.Model):
title = models.CharField(max_length=100, blank=True, null=True)
text = models.TextField(blank=True, null=True)
location = models.PointField()
...
class BlogPost(Post):
blog = models.ForeignKey(Blog)
同樣,對博文的形式類也從PostForm類繼承:
class PostForm(MapModelForm):
...
class Meta:
model = Post
def clean(self):
...
class BlogPostForm(PostForm):
class Meta:
model = BlogPost
我曾經在兩個非基於類的視圖中處理兩個模型的創建/更新。爲了讓事情變得乾乾淨淨,我決定試試Django的基於類的通用視圖。但是由於缺乏相關文件的例子和用戶不友善以及各種方法,我感到困惑。
這個想法是爲Post
模型使用基於類的窗體視圖,並繼承它們爲BlogPost
。我應該如何定製視圖類?
我應該分開PostCreate和PostUpdate視圖嗎?然後這兩個班級幾乎完全相同,根本不幹。
對於更新/創建帖子,我是否應該有一個FormView
?它適用於創作,但我無法弄清楚如何爲更新做到這一點。
我應該使用提供的mixin類構建自定義視圖(或創建/更新的兩個視圖),而不是直接從視圖繼承?
謝謝你的出色答案。 – omat 2012-04-27 14:17:40
如何在不知道POST是要創建還是更新的情況下路由到良好的視圖?遵循這種結構有沒有一種好方法? – lajarre 2014-01-07 15:23:25