Python 如何执行表示现有表或数据库视图的模型?

Python 如何执行表示现有表或数据库视图的模型?,python,django,django-models,Python,Django,Django Models,我试图从django创建一个数据库视图,而不是从现有数据库表关联一个模型。我是django世界的新手,我不知道如何才能做到这一点。有人知道从哪里着手解决这个问题吗?也许这是不可能的,但你能看到任何替代方案吗 我知道如何定义一个模型,它不是管理,考虑我发现的托管= false >代码,但是如何在模型类中创建一个定制的SQL视图?< /p> 大概是这样的: Class myModel(models.Model): Object = models.raw("CREATE VIEW foo AS

我试图从django创建一个数据库视图,而不是从现有数据库表关联一个模型。我是django世界的新手,我不知道如何才能做到这一点。有人知道从哪里着手解决这个问题吗?也许这是不可能的,但你能看到任何替代方案吗

我知道如何定义一个模型,它不是管理,考虑我发现的<代码>托管= false >代码,但是如何在模型类中创建一个定制的SQL视图?< /p> 大概是这样的:

Class myModel(models.Model):

   Object = models.raw("CREATE VIEW foo AS SELECT * FROM table.A")
   class Meta:   
    db_table = 'myview\".\"mymodeltable'
    managed = False

使用
inspectdb
management命令,可以从现有表中获取模型定义。为此,您需要配置settings.py文件以访问要使用的数据库,然后执行以下操作:

python manage.py inspectdb > models.py
您将看到,它还自动设置
managed=False
。从那时起,您可以开始使用典型的
objects.all()、objects.filter()
和这些东西来查询它的对象

注意:不要忘记将带有导入模型的应用程序添加到settings.py文件的
INSTALLED_APPS
变量中


不幸的是,这可能是最后的答案,可以在网站上找到

如果模型表示通过其他方式创建的现有表或数据库视图,则此选项非常有用


你想完成什么?