我尝试使用Django ModelForms构建链接到PostgreSQL数据库的表单。模板正在呈现其中的两个字段(具有许多关系的字段),但它只为“title”提供了一个空框。在
这是我的表单.py公司名称:
在表单.py公司名称:
class ProgramForm(forms.ModelForm):
class Meta:
model = Program
fields = ['function','task', 'title']
widgets = {
'function' : forms.Select,
'task' : forms.Select,
'title' : forms.Select,
}
这是我的模型.py公司名称:
^{pr2}$在视图.py公司名称:
def main(request):
return render (request, 'assignments/main.html')
def add_program(request):
form = ProgramForm()
return render (request, 'assignments/ad_form.html', {"form":form})
def link(request):
if request.method == 'POST':
form = ProgramForm(request.POST)
if form.is_valid():
return HttpResponse("we maybe getting somewhere")
else:
return HttpResponse("keep working")
我需要一些事情发生:
我需要的“标题”呈现在html页面向下滚动(相同的方式“功能”和“任务”出现。
我需要能挽救这些关系。模型中填充了除关系之外的所有所需信息。目标是让工作人员能够选择一个“功能”,使其作为向下滚动“任务”的过滤器(功能和任务有一个单一的对象),然后允许他们选择任何他们想添加到他们的投资组合中的程序。
任何帮助都将不胜感激。在
我可以从视图.py并将if传递给模板。在
HTML格式
^{pr2}$1。表单中的标题字段
对于这一点,我不太明白title字段是如何像函数和任务一样向下滚动的。函数和任务是下拉式的,因为它们是许多链接到其他模型的字段,这意味着用户必须选择要链接的函数模型和任务模型中的其他对象。另一方面,title字段只是一个CharField,因此没有定义的一组内容供用户选择。要允许用户输入程序的标题,您应该将title的小部件更改为Textarea():
表单.py
2。从表单中保存程序
要保存用户在staff member上创建的程序,只需添加窗体保存()到您的链接(请求)函数:
视图.py
^{pr2}$希望这有帮助!在
相关问题 更多 >
编程相关推荐