Django Cannot assign "A1": "B1" must be a "C1" instance.
2024-09-08 16:40:47
Django Cannot assign "A1": "B1" must be a "C1" instance.
原因:使用了外键
说明:如果想要给外键字段插入数据时,我们必须使用 C1 模型类的实例,而不是具体的参数值。也就是说,如果使用了外键,先实例化外键查询,然后再插入的表里面放入实例化后的外键连接。
错误示例:
# 从request.session取出name的值,
# 然后把name的值插入到form对象的user_name中
form.instance.user_name = request.session["info"]["name"]
正确示例:
# 通过request.session取出name的值作为索引,
# 到数据库取出外键,实例化外键查询
# 然后把把实例化的外键插入到form对象的user_name中
user_name=UserInfo.objects.get(name=request.session["info"]["name"])
form.instance.user_name = user_name
最新文章
- 从零开始编写自己的C#框架(2)——开发前准备工作
- web app性能大讨论
- 【Java Saves!】Session 5:计算机器之三--二指禅
- UVA294DIvisors(唯一分解定理+约数个数)
- linux vi 工具的使用
- Qualcomm device使用ION memory manager取代PMEM
- 微软IOC容器Unity简单代码示例3-基于约定的自动注册机制
- LeetCode题解——Regular Expression Matching
- C++ 11 笔记 (五) : std::thread
- JavaScript高级程序设计52.pdf
- java学习——IO流
- 安装arcgis server 10.2遇到的问题总结
- springmvc框架下ajax请求传参数中文乱码解决
- linux的学习系列 3---目录
- MySQL、Oracle数据库之操作系统版本选择
- oracle 查询优化改写
- DevExpress控件库 开发使用经验总结1 DevExpress简介、安装、使用
- git 20181119
- java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()Ljava/lang/Integer; 	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.jav
- MySQL优化(三) 表的设计
热门文章
- typescript - 学习档案
- 安装torch_scatter,torch-sparse,torch-cluster,torch-spline-conv,torch-geometric
- drf内容总结
- 比Everything更强的文件搜索工具,支持文件名、文件内容和文件图片上的文字搜索,文件内容搜索工具,文件图片内容搜索工具,OCR图片文本识别搜索,文件快速搜索工具,文字识别文件搜索工具
- 微信小程序 table表格 固定表头和首列 右侧表格可以左右滚动(多种表格演练)
- npm升级报错,没有权限.ERRERR!The operation was rejected by your operating system. npm ERR!Error: EPERM: operation not permitted, rename
- [737] Interlude OpCodez
- MAMP PRO 使用指南 (配置nginx 重写)
- PY3多继承
- Linux 第六节( 磁盘系统,挂载,分区,格式化)