我正在尝试创建CreateView
类型的视图。此视图将采用我创建的form_class = CourseForm
,并在其中排除了一些字段。instructor
字段是一个foriegnKey,我不希望用户能够在表单中控制它。它是一个取决于登录用户的字段。在
# forms.py
class CourseForm(forms.ModelForm):
class Meta:
model = Course
exclude = ['instructor', 'members', 'slug']
# ...
我的观点如下。我认为通过在initial
中包含指导者值,可以在提交时传递概要文件实例
但问题是,每当我提交表格时,都会出现以下错误:
NOT NULL constraint failed: myapp_course.instructor_id
如果要设置
instructor
字段的初始值,则不应将其从表单中排除。你可以把字段隐藏起来。在或者可以将其包含在
exclude
列表中,但不应重写get_initial
方法,而是手动执行分配:检查关于what does ^{} do. 的django文档
还要检查关于
form_valid
函数和how forms are handled in class based views.的django doc相关问题 更多 >
编程相关推荐