我正在尋找改進我的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項目的最好方法。 –