我使用的是行级权限模型,称为django粒度权限(http://code.google.com/p/django-granular-permissions/)。权限模型只需再添加两个字段,即内容类型和对象id
我使用了以下查询:
User.objects.filter(Q(row_permission_set__name='staff') | \
Q(row_permission_set__name='student'), \
row_permission_set__object_id=labsite.id)
我想向结果集中添加is_staff
和is_student
布尔字段,而不必每次获取结果时都进行查询。在
Django文档显示了querysets的extra()方法,但我不知道应该用这个关系为纯SQL选择查询编写什么。在
怎么做?在
通常您会使用select_related()来处理这类问题,但不幸的是,它不适用于反向关系。你能做的就是扭转这个问题:
相关问题 更多 >
编程相关推荐