TypeError at / registration __init __()得到一个意想不到的关键字参数'null' [英] TypeError at /registration __init__() got an unexpected keyword argument 'null'

查看:235
本文介绍了TypeError at / registration __init __()得到一个意想不到的关键字参数'null'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请求方法:GET
请求URL: http://127.0.0.1:8000/registration
Django版本:1.3.1
异常类型:TypeError
异常值:

Request Method: GET Request URL: http://127.0.0.1:8000/registration Django Version: 1.3.1 Exception Type: TypeError Exception Value:

__ init __ )得到一个意想不到的关键字参数'null'

__init__() got an unexpected keyword argument 'null'


异常位置:
/usr/local/lib/python2.7/dist-packages/django/forms/fields.py in
init ,第196行Python可执行文件:/ usr / bin / python Python版本:2.7.2 Python路径:

Exception Location: /usr/local/lib/python2.7/dist-packages/django/forms/fields.py in init, line 196 Python Executable: /usr/bin/python Python Version: 2.7.2 Python Path:

['/ home / forent / myprograms / mysite7',
'/ usr / local /lib/python2.7/dist-packages/oauth2-1.5.211-py2.7.egg',
'/usr/local/lib/python2.7/dist-packages',
' /usr/local/lib/python2.7/dist-packages/python_twitter-0.8.2-py2.7.egg',
'/usr/local/lib/python2.7/dist-packages/ipython- 0.12-py2.7.egg',
'/usr/lib/python2.7','/ usr / lib / python 2.7 / plat-linux2',
'/usr/lib/python2.7/lib-tk','/usr/lib/python2.7/lib-old',
'/ usr / lib /python2.7/lib-dynload',
'/usr/local/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages'
'/usr/lib/python2.7/dist-packages/PIL',
'/usr/lib/python2.7/dist-packages/gst-0.10',
'/ usr / lib / python2.7 / dist-packages / gtk-2.0',
'/usr/lib/pymodules/python2.7',
'/usr/lib/python2.7/dist-软件包/ ubuntu-sso-client',
'/usr/lib/python2.7/dist-packages/ubuntuone-client',
'/usr/lib/python2.7/dist-packages/ ubuntuone-control-panel',
'/usr/lib/python2.7/dist-packages/ubuntuone-couch',
'/usr/lib/python2.7/dist-packages/ubuntuone-安装程序',
'/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']

['/home/forent/myprograms/mysite7', '/usr/local/lib/python2.7/dist-packages/oauth2-1.5.211-py2.7.egg', '/usr/local/lib/python2.7/dist-packages', '/usr/local/lib/python2.7/dist-packages/python_twitter-0.8.2-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/ipython-0.12-py2.7.egg', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.7', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '/usr/lib/python2.7/dist-packages/ubuntuone-client', '/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', '/usr/lib/python2.7/dist-packages/ubuntuone-couch', '/usr/lib/python2.7/dist-packages/ubuntuone-installer', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']

服务器时间:1月27日,星期五2012 11:11:22 -0600

Server time: Fri, 27 Jan 2012 11:11:22 -0600

view

from django.shortcuts import render_to_response
from registration.models import UserDetails
from forms import UserForm
from django.template import RequestContext
from django.http import HttpResponseRedirect


def user_details(request):
    if request.method=="POST":
        uform=UserForm(request.POST)
        if uform.is_valid():
            profile=uform.save(commit=False)
            profile.save()
        else:
            uform=UserForm()
        return render_to_response('career.html',{'uform':uform},context_instance=RequestContext(request))

#model

from django.db import models

class UserDetails(models.Model):
    fname=models.CharField(max_length=20)
    lname=models.CharField(max_length=20)
    email = models.EmailField()
    address = models.CharField(max_length=50)
    country = models.CharField(max_length=20)
    def __unicode__(self):
        return self.fname
        return self.lname
        return self.email
        return self.address
        return self.country
#forms

from django import forms
from registration.models import UserDetails


class UserForm(forms.Form ):
    fname=forms.CharField(max_length=20, null=True,blank=True)
    lname=forms.CharField(max_length=20, null=True,blank=True)
    email = forms.EmailField(blank=True, null=True)
    address = forms.CharField(max_length=50, null=True,blank=True)
    country = forms.CharField(max_length=20, null=True,blank=True)

#urls

from django.conf.urls.defaults import patterns, include, url

from django.contrib import admin
admin.autodiscover()
# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover()

urlpatterns = patterns('',
    # Examples:
     url(r'^registration/$', 'registration.views.user_details', name='user_details'),
    # url(r'^mysite7/', include('mysite7.foo.urls')),

    # Uncomment the admin/doc line below to enable admin documentation:
    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
      url(r'^admin/', include(admin.site.urls)),
)

#template 

<form enctype="multipart/form-data" method="post">{% csrf_token %}
    {{ uform.as_p }}
   <input type="submit" ....>
</form>

这是我写的代码..

推荐答案

表单字段没有 null 空白参数。这些仅用于模型场。对于表单字段,您只需要需要

Form fields don't have null or blank arguments. Those are for model fields only. For form fields, you just have required.

但是,您应该真正使用 ModelForm 将从模型中为您创建表单域,并允许您保存。

However, you should really be using a ModelForm which will create the form fields for you from the model, and allow you to save it afterwards.

这篇关于TypeError at / registration __init __()得到一个意想不到的关键字参数'null'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆