我有下面的类(降至为了简洁):如何在使用相同数据库的不同应用程序之间执行django查找?
from other.app.models import Enclosure
class Server(models.Model):
enclosure = models.ForeignKey(Enclosure, null=True, blank=True, db_index=True, related_name='server_enclosure')
def get_enclosure(self):
get_enclosure = self.enclosure.server_enclosure.get(rack=10)
models.ForeignKey(机柜< - 外壳是单独的应用程序类
问我是对我的查询。怀疑这是不是正确的方式来做到这一点,因为pylint-django抱怨。是否有更好的方法在django内执行get()?
我在看django文档,它看起来像跨越关系的查找是针对同一应用程序中的模型量身定制的似乎无法找到任何跨越使用相同数据库的不同应用程序的查找的良好参考模式。
我认为这是完全正常。如果我以正确的方式获得它:)例如,多个项目可能会有'auth'应用程序与用户以及其他具有与用户相关的模型的应用程序。所以这样的跨应用程序查找是必要的。因为您需要在一个应用中过滤用户的某些内容,请在另一个应用中进行过滤。 – wolendranh
谢谢。你确实以正确的方式得到它:-)。我遇到的问题是pylint-django不断抛出一个无成员错误,所以只是想知道是否有更好的方法。 – user2152283
关系查找仅适用于相同的应用程序是完全不正确的。 Django根本不关心你的关系在哪个应用程序中。 –