我使用默认的User模型,Agent充当OneToOne配置文件模型。我想要创建一个查询集的所有用户谁有代理作为一个字段。我知道hasattr,但是它返回一个True/False布尔值,所以我无法在查询中实现它。
视图
class AgentSearchResults(ListView):
model = User
template_name = 'agent_search_results.html'
def get_queryset(self):
queryset = super(AgentSearchResults, self).get_queryset()
# Write something here to check if all users in 'queryset' has 'agent'.
return queryset供参考的模型
class Agent(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='agent')发布于 2017-11-26 18:50:10
您可以通过检查筛选是相关模型的pk为空
User.objects.filter(agent__pk__isnull=False)就你的情况而言:
def get_queryset(self):
queryset = super(AgentSearchResults, self).get_queryset()
# Write something here to check if all users in 'queryset' has 'agent'.
queryset = queryset.filter(agent__pk__isnull=False)
return querysethttps://stackoverflow.com/questions/47499648
复制相似问题