django查询优化支持多数据库关系。
django-multi-db-relation的Python项目详细描述
#django multi-db relation
>;queryset优化支持django模型之间的多数据库跨越关系。
\requirements
-python(>;=3.5)
-django(>;=1.10)
```sh
pip-install-django多数据库关系
````
``python
a类modela(models.model):
name=models.charfield(max_len长=10)
a=models.charfield(max u len长=10)
class modelc(models.models.models):
b=models.foreignkey(modelb,on-delete=models.do什么都不做,db-constraint=false)
`````
>假设“model a”和“modelab”被路由到“db1”和“modelc”被路由到“db2```db1`和“modelc”被路由到“db1”,而“modelc”被路由到“modedb``db2```````.
>我们**不能**用“select相关函数”运行queryset查询集。
` BR/>< BR/>在这种情况下,修改'MultCy'类似于:
BR/> `Python < BR/>从MulyOxdByRelial.MIXIN导入外部DbQueReStIdIXIN
BR/>类模型CQueRSET(ExtaldBQueReStCuffin),models.queryset:
通过
类modelc(models.model):
b=models.foreignkey(modelb,on_delete=models.do_nothing,
>objects=models.manager.models.manager.from-queryset(queryset=modelcqueryset=modelcqueryset=queryset()
>class meta:
>外部数据库字段=['b']
```
>
>```python
>>gt;modelc.objects.select相关的查询数从o(n)优化到o(1)优化查询数从o(n)优化到o(1)优化查询数从o(n)优化到o(n)优化到o(1)
>>>>>1优化查询数从o(1)优化到o(1)优化>;modelc.objects.select_related('b_u a')也能很好地工作
```
\license
-参见[许可证](许可证)
>;queryset优化支持django模型之间的多数据库跨越关系。
\requirements
-python(>;=3.5)
-django(>;=1.10)
```sh
pip-install-django多数据库关系
````
``python
a类modela(models.model):
name=models.charfield(max_len长=10)
a=models.charfield(max u len长=10)
class modelc(models.models.models):
b=models.foreignkey(modelb,on-delete=models.do什么都不做,db-constraint=false)
`````
>假设“model a”和“modelab”被路由到“db1”和“modelc”被路由到“db2```db1`和“modelc”被路由到“db1”,而“modelc”被路由到“modedb``db2```````.
>我们**不能**用“select相关函数”运行queryset查询集。
` BR/>< BR/>在这种情况下,修改'MultCy'类似于:
BR/> `Python < BR/>从MulyOxdByRelial.MIXIN导入外部DbQueReStIdIXIN
BR/>类模型CQueRSET(ExtaldBQueReStCuffin),models.queryset:
通过
类modelc(models.model):
b=models.foreignkey(modelb,on_delete=models.do_nothing,
>objects=models.manager.models.manager.from-queryset(queryset=modelcqueryset=modelcqueryset=queryset()
>class meta:
>外部数据库字段=['b']
```
>
>```python
>>gt;modelc.objects.select相关的查询数从o(n)优化到o(1)优化查询数从o(n)优化到o(1)优化查询数从o(n)优化到o(n)优化到o(1)
>>>>>1优化查询数从o(1)优化到o(1)优化>;modelc.objects.select_related('b_u a')也能很好地工作
```
\license
-参见[许可证](许可证)