Mil*_*ano 1 python django django-views
是否可以覆盖clean method由基于类的视图 - 生成的形式的a UpdateView?
在中form,我将覆盖clean方法来检查是否填充了第一字段或第二字段。
形式如下:
class MyForm(forms.ModelForm):
...
def clean(self):
super(MyForm,self).clean()
if bool(self.cleaned_data['first_field'])== bool(self.cleaned_data['first_field']):
raise ValidationError("Please, fill the first or second field")
Run Code Online (Sandbox Code Playgroud)
视图:
class EditOrderView(UpdateView):
model = Job
fields = ['language_from', 'language_to', 'level', 'short_description', 'notes',
'first_field', 'second_field']
template_name = 'auth/jobs/update-order.html'
def get_object(self, queryset=None):
return get_object_or_404(self.model, pk=self.kwargs["pk"], customer=self.request.user)
def get_success_url(self):
return '/my-orders/'
def form_valid(self, form):
self.order = form.save()
email.AdminNotifications.edited_order(self.order)
return HttpResponseRedirect(self.get_success_url())
Run Code Online (Sandbox Code Playgroud)
您可以通过设置使视图使用表单form_class。
class EditOrderView(UpdateView):
model = Job
form_class = MyForm
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
729 次 |
| 最近记录: |