gpt4 book ai didi

django - 为现有数据库/sql View 创建 django 模型?

转载 作者:行者123 更新时间:2023-12-02 05:31:54 25 4
gpt4 key购买 nike

我已在 $template_dir/sql/$someTableName.sql 文件中插入 View 的定义。 (创建或替换 View ),因此每次运行 syncdb 时,都会创建数据库 View 。

我可以在 models.py 中创建一个访问该 View 的 python 类吗?

使用 python 的原始 sql 功能是更好的做法吗?

---编辑---

我遇到的另一个问题是 View 没有主键,但 django 似乎假设会有一个主键,因为我收到错误在渲染时捕获异常:(1054,“未知列” appName_currentleagues.id' in 'field list'") 但我没有定义这样的成员:

Class CurrentLeagues(models.Model):
League = models.ForeignKey(League)
class Meta:
managed = False

所以我的猜测是,django 合理地认为我没有在 CurrentLeagues 类中定义主键,因此 Django 假设有一个名为 id 的主键。有没有办法告诉 Django 没有主键(因为这实际上是一个 View ),或者这不是我的问题?

最佳答案

参见Unmanaged models

您像往常一样定义模型并将managed = False添加到元选项中:

class MyModel(models.Model):
...
class Meta:
managed = False

关于django - 为现有数据库/sql View 创建 django 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2245956/

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