请问大家,这个错误是怎么回事呀?!!DatabaseError at /post/Exception Value: null value in column "receiver" violates not-null constraint
我用django做了个留言板应用修改时在forms.py文件中多加了一个条件,在发信息时,如果指定收信息的人不是已注册的用户(该用户不存在),则引发一个ValidationError异常.大概是这样的:
class MsgPostForm(forms.Form): receiver=forms.CharField(label='Send to:',
widget=forms.TextInput (attrs={'size':30, 'max_length':30}))
#实例化一个用于输入留言标题的文本框对象,
#并将该对象保存到title属性中。
title=forms.CharField(label='Title',
widget=forms.TextInput (attrs={'size':30, 'max_length':30}))
#实例化一个用于输入留言内容的文本框对象,
#并将该对象保存到content属性中。
#该文本框会转换为tinymce富文本编辑器的外观。
content=forms.CharField(label='Content',
widget=forms.Textarea(attrs={'size':10000}))
#该函数用于验证用户输入receiver username的合法性
def clean_receiver(self):
if 'username' in self.cleaned_data:
#从通过一般性验证的用户名输入到指定的receiver文本框中
#并保存到变量receiver中
receiver=self.cleaned_data['receiver']
if receiver==username:
return receiver
#如果该用户不存在,则引发一个ValidationError异常
raise forms.ValidationError('This user does not exist.')在运行时就出现上面说的错误了,不知道是设置数据库时出的问题还是多加了这些脚本的问题,之前都没事的.请高手帮帮忙,小女子感激不尽~~~~
我用django做了个留言板应用修改时在forms.py文件中多加了一个条件,在发信息时,如果指定收信息的人不是已注册的用户(该用户不存在),则引发一个ValidationError异常.大概是这样的:
class MsgPostForm(forms.Form): receiver=forms.CharField(label='Send to:',
widget=forms.TextInput (attrs={'size':30, 'max_length':30}))
#实例化一个用于输入留言标题的文本框对象,
#并将该对象保存到title属性中。
title=forms.CharField(label='Title',
widget=forms.TextInput (attrs={'size':30, 'max_length':30}))
#实例化一个用于输入留言内容的文本框对象,
#并将该对象保存到content属性中。
#该文本框会转换为tinymce富文本编辑器的外观。
content=forms.CharField(label='Content',
widget=forms.Textarea(attrs={'size':10000}))
#该函数用于验证用户输入receiver username的合法性
def clean_receiver(self):
if 'username' in self.cleaned_data:
#从通过一般性验证的用户名输入到指定的receiver文本框中
#并保存到变量receiver中
receiver=self.cleaned_data['receiver']
if receiver==username:
return receiver
#如果该用户不存在,则引发一个ValidationError异常
raise forms.ValidationError('This user does not exist.')在运行时就出现上面说的错误了,不知道是设置数据库时出的问题还是多加了这些脚本的问题,之前都没事的.请高手帮帮忙,小女子感激不尽~~~~
我想把数据库表定义的非空限制去掉, 试着进sql输入update messageboard_msg set receiver=NULL,可是都不管用.而且还显示ERROR: Relation "messageboard_msg" does not exist.有人说可以用postgres的pgAdminIII直接把column上not null的对勾去掉,可是我找不到那个地方.原谅菜鸟无知吧~~~
不知道是不是这个地方,我勾了,可是却不起作用,还是出现同样的error.
psql -l然后
psql your_db_name察看table
\d