我正在寻找改进我的Django web应用程序并主要是项目脚本。 我使用了很多次相同的Python代码,我想简化我的views.py
文件。改进Django查看方法
例如,我有好几次这部分:/
if request.method == 'POST':
form = FormBase(request.POST or None, request.FILES or None)
if form.is_valid() :
post = form.save()
return HttpResponseRedirect(reverse('ReverseTemplate', kwargs={'id': post.id}))
else :
form = FormBase()
form.fields['Utilisateur'].initial = request.user.last_name + " " + request.user.first_name
所以,过去这部分我的不同观点功能,而不是拷贝,我想设置:
def DjangoFormID(request, FormBase, ReverseTemplate) :
if request.method == 'POST':
form = FormBase(request.POST or None, request.FILES or None)
if form.is_valid() :
post = form.save()
return HttpResponseRedirect(reverse('ReverseTemplate', kwargs={'id': post.id}))
else :
form = FormBase()
form.fields['Utilisateur'].initial = request.user.last_name + " " + request.user.first_name
而且在我看来称此功能:
DjangoFormID(request, IndividuFormulaire, IndividuResume)
我想知道我的过程是否正常?这是一种更好的编程方式,而不是我所做的?
然后,我得到这个错误:name 'IndividuResume' is not defined
我怎么能写我的方法在我的Django的模板?
谢谢
你试过[FormView](https://docs.djangoproject.com/en/1.11/ref/class-based-views/generic-editing/#django.views.generic.edit.FormView)吗? –
@BearBrown我从来没有使用过'通用编辑视图':/你认为我的过程是错误的吗?我想在可能的情况下简化我的脚本和调用函数,因为我的视图中有很多次相同的脚本部分。 – Deadpool
我想[class-based-views](https://docs.djangoproject.com/en/1.11/ref/class-based-views/)创建django项目的最好方法。 –