gpt4 book ai didi

Django:查询没有主键的只读 View

转载 作者:行者123 更新时间:2023-12-02 20:21:39 25 4
gpt4 key购买 nike

class dbview(models.Model):
# field definitions omitted for brevity
class Meta:
db_table = 'read_only_view'

def main(request):
result = dbview.objects.all()

渲染时捕获异常:(1054,“‘字段列表’中未知列‘read_only_view.id’”)

我在 View 中可以看到没有主键。有解决办法吗?

评论:
我无法控制使用 Django 访问的 View 。 MySQL 浏览器显示列,但没有主键。

最佳答案

当你说“我无法控制我使用 Django 访问的 View ”时。 MySQL 浏览器显示列,但没有主键。'

我假设您的意思是这是一个旧表,并且不允许您添加或更改列?

如果是这样,并且确实没有主键(即使是字符串或非 int 列*),那么表还没有设置得很好,性能可能会很糟糕。

不过这对你来说并不重要。您所需要的只是一列保证每行都是唯一的。在你的模型中将其设置为 'primary_key = True ,Django 会很高兴。

  • 还有另一种可能会产生问题。如果没有保证唯一的列,则表可能使用复合主键。也就是说,它指定两列放在一起将提供唯一的主键。这是完全有效的关系建模,但不幸的是 Django 不支持。在这种情况下,除了原始 SQL 之外,您不能做太多事情,除非您可以添加另一列。

关于Django:查询没有主键的只读 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/605896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com