数据库视图支持的Django模型
django-view-models的Python项目详细描述
django_view_模型
专为博士后设计。可以或不可以与其他数据库一起工作。在
安装/使用
pip install django_view_models
- 将
django_view_models
添加到INSTALLED_APPS
- 定义视图模型(见下文)
python manage.py sync_view_models
(每次视图定义更改后运行)
定义视图模型
必须在模型上定义字段,并在模型上定义VIEW_DEFINITION
或{
请注意,与常规模型一样,django将添加一个名为id
的整数主键,除非在其中一个字段上设置primary_key=True
。在
fromdjango.dbimportmodelsfromdjango_view_models.modelsimportViewModel,MaterializedViewModelclassBook(models.Model):title=models.TextField()is_good=models.BooleanField()# create a ViewModel with a manual queryclassGoodBook(ViewModel):title=models.TextField()VIEW_DEFINITION=''' SELECT id, title FROM my_app.book WHERE is_good = true '''# create a ViewModel, and use Django's ORM to create the queryclassBadBook(ViewModel):title=models.TextField()defview_query():returnBook.objects.filter(is_good=False).values('id','title')
- 项目
标签: