如何在Django中使用MySQL视图?

Jak*_*kub 4 python mysql django view

我想使用在MySQL中创建的视图作为Django中的模型。我想在我的Intranet网站上显示我公司正在进行的未完成流程的状态。我在论坛上只找到了比较老的条目,所以有没有一种简单的方法可以传递MySQL视图syncdb

如果没有,假设我有两个表:

  1. 子流程的硬性里程碑,例如:
  2. 带有上表中的进程和子进程信息作为ID的表: 在此处输入图片说明

  3. 我在MySQL中的观点将做类似的事情。4)结果将是:

我想在django APP中只有一个模型,结果是4。最快的方法是什么?自定义SQL查询?或者我需要有模型progress_tbproc_tb并结合他们?如何多次引用同一张表(如在Access / MySQL中progress_tb一样progress_tb_1)?到现在为止,我只知道如何进行过滤查询,但是如何从联接表中“添加”几列呢?我尝试了django的“额外”选项,但我不明白它的工作原理:(

Ros*_*ers 6

您可以通过嵌套类上的字段声明将视图指定为不受 Django管理:managed = FalseMeta

class MyViewModel(models.Model):
    field1 = models.IntegerField()
    [...]

    class Meta:
        managed = False
        db_table = 'MyView' # your view name
Run Code Online (Sandbox Code Playgroud)

managed = False将导致python manage.py syncdb忽略该模型进行同步。

  • 感谢您的建议 - 我会研究一下:)并感谢其余的,它有效! (2认同)