【发布时间】:2020-07-04 06:04:19
【问题描述】:
我正在使用 Django 框架来制作数据库应用程序。我有一个我的数据库结构作为类。与“骑手”类具有 ForeignKey 关系的“Horse”类,而后者又与 User 具有 ForeignKey 关系。
一切正常,但我想过滤马匹,以便只显示连接到当前用户的马匹。
file: models.py
from django.contrib.auth.models import User
class Horse(models.Model):
name = ...
...
owner = models.ForeignKey('Rider')
class Rider(models.Model):
name = ...
...
user = models.ForeignKey(User)
所以当我渲染我的 html 页面时,我想相应地过滤马匹:
file: views.py
from .models import Horse
def Horses(request):
horses = {
'horses': Horse.objects.filter( ??????? )
}
return render(request, 'stable/horses.html', horses)
因此,如果我以“管理员”身份登录,我如何将其传递到过滤器中,以便与该用户有关系的骑手有关系的所有马匹都会显示?
在引用 ForeignKey 对象时似乎有所不同,而不仅仅是我无法弄清楚的属性。
【问题讨论】:
标签: python django database filter foreign-keys