Django提交表单时出错



正在执行系统检查。。。

由.wapper在0x75abfcd8>Traceback启动的线程中出现未处理的异常(最后一次调用):文件"/home/pi/.venv/lib/python3.5/site packages/django/utils/autoreload.py",第225行,位于包装器fn(*args,**kwargs)文件"/home/pi/.vnv/lib/python3.5/site-packages/djando/core/management/commands/runserver.py"中,第121行,在inner_run self.check(display_num_errors=True)文件"/home/pi/.venv/lib/python3.5/site packages/django/core/management/base.py",第364行,在check include_deployment_checks=include/deployment/checks,文件"/hom/pi/.venv/lib/python3.5/site packaging/djano/core/maanagement/base.my",在_run_checks return checks.run_checks(**kwargs,在check_url_namespaces_unique all_namespaces=_load_all_namespaces(解析器)文件"/home/pi/.venv/lib/python3.5/site packages/django/core/checks/urls.py",第57行,在_load_aall_namespaces url_patterns=getattr(解析器,'url_patternes',[])文件"-home/pi/.wenv/lib/python3.5-site packages/django/utils/functional.py"第36行,在get-res=instance.dict[self.name]=self.func(instance)文件"/home/pi/.venv/lib/python3.5/site packages/django/urls/resolvers.py",第536行,在url_patterns patterns=getattr(self.urlconf_module,"urlpatters",self.urlconf_module)文件"-home/pi/.wenv/lib/python3.5-site packages/django/utils/functional.py",第36行,在get-res=instance.dict[self.name]=self.func(instance)File"/home/pi/.venv/lib/python3.5/site packages/django/urls/resolvers.py",第529行中,在urlconf_module return import_module(self.urlconf_name)File"/home/pi/.vnv/lib/python3.5/importlib/init.py"中,第126行,在import_modulereturn _bootstrap中_gcd_import(name[level:],package,level)File",第986行,在_gcd_import File"中,第969行,在_find_and_load File"、第958行,在_fild_and_load_unlocked File"行,第673行,in exec_module File"第222行,在_call_with_frames_removed File"/home/pi/tango_with_django_project/tango_with_django.project/ulls.py"第25行,在url(r'^rango/',include('rano.urls'))中,文件"/home/pi/.venv/lib/python3.5/site packages/django/urls/conf.py",第34行,在include-ulconf_module=import_module(urlconf_mode)文件"/hom/pi/.venv/lib/python3.5/importlib/init.py",第126行,在import_modulereturn _bootstrap中_gcd_import(name[level:],package,level)File",第986行,在_gcd_import File"中,第969行,在_find_and_load File"、第958行,在_fild_and_load_unlocked File"行,第673行,in exec_module File"第222行,在_call_with_frames_removed File"/home/pi/tango_with_django_project/rango/urls.py"第2行,在from rango import views File"/home/pi/tango_with_django_project/rango/views.py",第5行,在from rango.forms import CategoryForm File"/hom/pi/tango_with_django.project/rago/forms.py"第4行,在class CategoryForm(forms.ModelForm)中:File"/home/pi/.venv/lib/python3.5/site packages/django/forms/models.py"(第243行,in new)需要更新。"%name django.core.exceptions.ImproperlyConfigure:禁止创建没有'fields'属性或'exclude'属性的ModelForm;表单类别表单需要更新。

这是我的表格.py

从django导入表单从rango.models导入页面,类别

class CategoryForm(forms.ModelForm):name=表单。CharField(max_length=128,help_text="请输入类别名称。")views=forms。IntegerField(widget=forms.HiddenInput(),initial=0)likes=forms。IntegerField(widget=forms.HiddenInput(),initial=0)

类元:model=类别class PageForm(forms.ModelForm):title=表单。CharField(max_length=128,help_text="请输入页面的标题。")url=forms。URLField(max_length=200,help_text="请输入页面的URL。")views=forms。IntegerField(widget=forms.HiddenInput(),initial=0)

类元:model=页面fields=('title','url','views')这是我的看法.py

从django.template导入请求上下文从djangon.shortcuts导入render_to_response从rango.models导入类别从rango.models导入页面从rango.forms导入CategoryForm

def index(request):context=RequestContext(request

def about(request):context=RequestContext(request

def category(request,category_name_url):context=RequestContext(request)category_name=category_name_url.replace('_','')context_dict={'category_name]:category__name}try:category=category.objects.get(name=category_name)pages=Page.objects.filter(category=category)context_ddict['pages']=pages context_dict['category']=除category之外的类别。DoesNotExist:传递返回render_to_response('rango/category.html',context_dict,context)

def add_category(request):context=RequestContext(request,请求)

如果request.method=="POST":form=类别form(request.POST)

if form.is_valid():
form.save(commit=True)
return index(request)
else:
print (form.errors)

其他:form=类别form()

返回render_to_response('rango/add_category.html',{'form':表单},上下文)

您需要将fieldsexclude属性添加到表单类

class CategoryForm(forms.ModelForm):
class Meta:
model = Category
fields = ['name']

看起来您没有一个名为Category的模型,在这种情况下,您应该从forms.Form继承

class CategoryForm(forms.Form):
name = forms.CharField(max_length=128, help_text="Please enter the category name.")

最新更新