1

我正在练习 Django 的基于类的视图。
在使用通用 CreateView 进行练习时,我无法理解为什么我的“字段”属性
不起作用......我正在尝试使用 CreateView 构建一个 Post Create 页面,而
我只想要“post_title”和“post_content”字段出现在帖子页面上(换句话说,
我不想省略表单上的“用户”和“post_date”字段)。我很确定“字段”属性是定义它的正确位置,但由于某种原因,所有 4 个字段都出现在发布表单上。

这是我的代码:

模型.py

class Post(models.Model):
    user = models.ForeignKey(User)
    post_title = models.CharField(max_length=200)
    post_content = models.CharField(max_length=500)
    post_date = models.DateTimeField('date posted')

视图.py

class PostCreate(CreateView):
    template_name = 'app_blog/post_save_form.html'
    model = Post
    fields = ['post_title', 'post_content']


知道为什么所有 4 个字段都会出现..?谢谢 :)

4

1 回答 1

1

你必须这样做:

class PostForm(ModelForm):
    class Meta:
        model = Post
        fields = ['post_title', 'post_content']    

class PostCreate(CreateView):
    template_name = 'app_blog/post_save_form.html'
    model = Post
    form_class = PostForm
于 2013-07-29T02:47:03.600 回答