鉴于以下模型:
class Assets(models.Model):
assettag = models.CharField()
...
pass
class Employees(models.Model):
loginname = models.CharField()
pass
class Item(models.Model):
descr = models.CharField()
asset = models.OneToOneField('Assets')
...
class Assignments(models.Model):
employeeid = models.ForeignKey('Employees')
assetid = models.ForeignKey('Assets')
...
我可以使用 Q 对象进行查询,返回Item
包含某个descr
或某个的所有模型assettag
。
Item.objects.filter(Q(asset__assettag__icontains = query) |
Q(descr__icontains = query) #|
).order_by('asset__assettag')
是否也可以employeeid__loginname
以某种方式包括在内?我想不出这样做的方法。
我想检索表Assets
中引用的Item
并且属于某个Employee
.
首先在作业模型中添加一个“related_name”。
assetid = models.ForeignKey(Assets, related_name='asset_related_name')
那么你可以使用这个 asset__asset_related_name__employeeid__loginname
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句