Python中文
首页
教程
问答
标签
搜索
登录
注册
DJANGO在/***/(1048,“***”不能为NULL)的SAVE IntegrityError上添加NULL
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我试图使用Django的save函数保存实体调用“Persona”的记录,但当我试图插入新对象时,我得到了1048 IntegrityError,因为出于任何原因,Django在一个不能为NULL且是外键的字段上添加了NULL(该字段是表generado的外键),在insert语句期间,即使我正确地传递了值。 奇怪的是,我在'gendo'表中有值,并且我正确地捕捉了传递给POST的值,即使我打印了传递的值,但出于任何奇怪的原因DJango在generaid字段上添加了Null。在</p> <p>我在InnoDB和django1.8中使用MySQL。我的模型是从遗留数据库生成的。在</p> <p>模型慷慨</p> <pre><code>class Genero(models.Model): id = models.AutoField(db_column='ID', primary_key=True) # Field name made lowercase. genero = models.CharField(db_column='Genero', max_length=50) # Field name made lowercase. class Meta: managed = False db_table = 'Genero' </code></pre> <p>模范人物</p> ^{pr2}$ <p>在视图.PY在</p> <pre><code>def guardarpersona(request): direccion = json.loads(request.POST['direccion[]']) persona = json.loads(request.POST['persona[]']) temp = Direccion() temp.descripcion = direccion[1]['value'] temp.distrito = Distrito.objects.get(pk=direccion[0]['value']) temp.save() p = Persona() p.nombre = persona[1]['value'] p.apellido1 = persona[2]['value'] p.apellido2 = persona[3]['value'] numeroidentificacion = persona[4]['value'] observaciones = persona[12]['value'] fechanacimiento = persona[6]['value'] direccionfoto = '' genero = Genero.objects.get(pk=persona[5]['value']) print(genero) pais = Pais.objects.filter(id=persona[8]['value']) print(pais) lugarnacimiento = persona[7]['value'] direccion = temp profesion = persona[9]['value'] puesto = persona[10]['value'] lugartrabajo = persona[11]['value'] try: p.save() except Exception: from django.db import connection print (connection.queries[-1]) return HttpResponse('Success!') </code></pre> <p>已生成DJANGO SQL语句:</p> <p>系统检查未发现问题(0静音)。 2015年06月28日17:26:12 Django版本1.8.2,使用设置'白考拉。设置' 在<a href="http://127.0.0.1:8000/" rel="nofollow">http://127.0.0.1:8000/</a>启动开发服务器 使用CONTROL-C退出服务器</p> <p>慷慨对象</p> <p>Pais:Pais对象</p> <p>{{<cd1>}(<code>Persona</code>(<code>Persona</code>(<code>Nombre</code>,<code>Apellido1</code>,<code>Apellido2</code>,<code>NumeroIdentificacion</code>,<code>NumeroIdentificacion</code>,^{{<cd6>},^{{<cd7>},^{<cd8 8>},^{<cd9 9>},^{<cd10 10>},<code>LugarNacimiento</code>,^{<cd12 12>},^{<cd13 cd13>{{{<cd14 cd14>},{{<cd15 cd15}})的价值([安德鲁,[他们的第五)价值的价值(他们的,[他们的,[他们的他们的第,[他们的CDa、'RIVAS'、''、'、NULL、'、NULL、NULL、'、'、'、'、'、'、'、'、'、'、'、'时间':'0.000'} [2015年6月28日17:26:13]“POST/guardarpersona/HTTP/1.1”200 8</p> <p>错误:</p> <p>完整性错误/担保人/ (1048,“列‘慷慨’不能为空”)</p> <p>还有,这是一个文件夹,里面有我模特的照片,视图.py,已生成SQL语句,错误: <a href="https://www.dropbox.com/sh/wr3ve7cn9b0ofpm/AAD-57RXZGkxld74eCPhakERa?dl=0" rel="nofollow">https://www.dropbox.com/sh/wr3ve7cn9b0ofpm/AAD-57RXZGkxld74eCPhakERa?dl=0</a></p> <p>你知道我做错了什么吗?我是Django的新手,希望能得到帮助和建议。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>改变</p> <pre><code>genero = models.ForeignKey(Genero, db_column='GeneroID',null=False) </code></pre> <p>到</p> ^{pr2}$ <p>将null更改为“True”会通知django此字段(gengo)可以保留为null。因此,没有完整性错误。在</p> <p>别忘了移民。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
文本导入时标题行中的特殊字符
10 回答
文本小部件:在没有输入时更新并在循环后保持空闲
10 回答
文本小部件tkin
8 回答
文本小部件tkinter中的标签更改或文本外观更改是否有撤消功能?
4 回答
文本小部件tkinter复制图像选项
7 回答
文本小部件上的Python Tkinter ttk滚动条未缩放
1 回答
文本小部件上的滚动条可能需要根据制表符ord显示前进行滚动
4 回答
文本小部件不显示lis中的内容
8 回答
文本小部件不显示Unicode字符
3 回答
文本小部件中写入的行间距
6 回答
文本小部件中的文本作为变量
2 回答
文本小部件中的滚动条仅显示在底部
5 回答
文本小部件中的选项卡键空间计数
7 回答
文本小部件作为Lis
9 回答
文本小部件在主框架中扩展列宽
7 回答
文本小部件未使用删除功能清除
1 回答
文本小部件滚动动画(Tkinter、Python)
4 回答
文本居中。格式正确吗?
9 回答
文本差分算法
6 回答
文本已知时音频文件中的单词索引
8 回答