我正在创建一个用于将产品添加到网上商店的页面,但是我在模板中显示find feat*/builds/*/ -name log -type f -delete
时遇到了麻烦。如果所选类别不是要选择的最具体类别,则会引发ValidationError
。要选择类别,用户必须经过链式依赖的组合框选择,在该组合框中,您将从一个组合框开始作为主要类别,一旦选择了主要类别,就会出现另一个ValidationError
,以供选择子类别,依此类推,直到最里面子类别已选择。根据选定的类别,显示不同的ModelForm。 <select>
是我的基本产品模型(从中继承其他模型,例如Book或Shoes)中的一个字段,并且未在ModelForms的内部Meta类字段中列出,因此我无法使用{{1} }我的ModelForms上的方法。
这是我的观点:
category
如何在模板中呈现ValidationError,即如何在clean_category
中放入@login_required
def product_create_view(request):
if request.method == 'POST':
main_category = request.session.get('main_category')
create_product_form = mappings[main_category](request.POST)
if create_product_form.is_valid():
obj = create_product_form.save(commit=False)
category = request.session.get('category')
if Category.objects.get(id=category).is_leaf_node():
obj.category = Category.objects.get(id=category)
obj.save()
else:
raise forms.ValidationError('Please select most specific category.')
return render(request, 'products/product_create.html', {
'categories': Category.objects.filter(parent=None)
})
?目前,我正在查看堆栈跟踪。