Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:Can';t将空表单字段保存到数据库-以10为基数的int()的文本无效:'';_Python_Database_Django_Forms_Sqlite - Fatal编程技术网

Python Django:Can';t将空表单字段保存到数据库-以10为基数的int()的文本无效:'';

Python Django:Can';t将空表单字段保存到数据库-以10为基数的int()的文本无效:'';,python,database,django,forms,sqlite,Python,Database,Django,Forms,Sqlite,许多人报告了这种类型的错误,但到目前为止,没有一个修复对我有效。我有一个模型,它有一个允许空值的整数字段: def SomeModel(models.Model): ... price_sell = models.IntegerField(null=True) ... 然后我有一个这样的表格: class SomeForm(forms.Form): ... price_sell = forms.IntegerField(required=False)

许多人报告了这种类型的错误,但到目前为止,没有一个修复对我有效。我有一个模型,它有一个允许空值的整数字段:

def SomeModel(models.Model):
    ...
    price_sell = models.IntegerField(null=True)
    ...
然后我有一个这样的表格:

class SomeForm(forms.Form):
    ...
    price_sell = forms.IntegerField(required=False)
    ...
当将此字段留空并调用save方法时,我得到一个
无效的int()文本,以10为基数:“”
错误。我尝试了许多与空白和空参数有关的事情,但到目前为止还没有运气。

我的解决方案是这样做,即My views.py:

if form.is_valid():
    if(request.POST['price_sell'] == ''):
        price_sell = None
    ...
但我相信有一种更优雅的方法可以做到这一点。还是没有


我正在使用SQLite db在Windows上运行Django 1.6。

从表单中清除的数据中获取数据。
IntegerField
将获得您想要的内容<代码>表单。清理数据['price\u sell']

@Charles我对我的问题进行了编辑。