郑粗心 2022-05-31 09:53
浏览 87
已结题

django 表结构有自关联,报错(1054, "Unknown column 'web_wiki.project' in 'where clause'")

使用django创建表结构后,利用modelform自动创建输入框的时候报错
原来的代码:
class Wiki(models.Model):
    project = models.ForeignKey(verbose_name='项目', to='Project', on_delete=models.CASCADE)
    title = models.CharField(verbose_name="标题", max_length=32)
    content = models.TextField(verbose_name="内容")
    #自关联
    parent = models.ForeignKey(verbose_name='父文章', to= 'Wiki',on_delete=models.CASCADE,null =True, blank=True, related_name='children')


修改后的代码:

class Wiki(models.Model):
    project = models.ForeignKey(verbose_name='项目', to='Project', on_delete=models.CASCADE, db_column='project', unique=True)
    title = models.CharField(verbose_name="标题", max_length=32)
    content = models.TextField(verbose_name="内容")
    #自关联
    parent = models.ForeignKey(verbose_name='父文章', to= 'Wiki',on_delete=models.CASCADE,to_field= 'project', null =True, blank=True, related_name='children')


原来的代码报错内容是说找不到叫'web_wiki.project_Id'的column,因为django用到外键后会自动在字段名后面加_id,所以我利用db_colunm=project让字段名保持和原来一致。但是最后还是报错了

![img](我的解答思路和尝试过的方法 https://img-mid.csdnimg.cn/release/static/image/mid/ask/328307169356176.png "#left")

img

我把parent在model form中exclude后就不会报错了。最终我想要的结果应该是下图再加一个输入框,输入框的标题是父文章。

img

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 6月8日
    • 创建了问题 5月31日

    悬赏问题

    • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
    • ¥15 java 的protected权限 ,问题在注释里
    • ¥15 这个是哪里有问题啊?
    • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
    • ¥15 texstudio的问题,
    • ¥15 spaceclaim模型变灰色
    • ¥15 求一份华为esight平台V300R009C00SPC200这个型号的api接口文档
    • ¥15 字符串比较代码的漏洞
    • ¥15 欧拉系统opt目录空间使用100%
    • ¥15 ul做导航栏格式不对怎么改?