【发布时间】:2018-06-22 22:26:09
【问题描述】:
我有 2 个模型。
Account:
id, name, age, discoverable
Friendship:
id, requestor, acceptor (requestor and acceptor are Account IDs)
我需要写2个api。
-
获取所有具有可发现=True 的帐户。我通过在 AccountViewSet 中对查询集应用过滤器来完成,如下所示:
def filter_queryset(self, queryset): queryset = queryset.filter(discoverable=True).all() return queryset -
使用以下 url 方案
<server-url>/accounts/1获取帐户详细信息,其中 1 是帐户 ID。这个 api 应该返回:- 如果账户 1 不可发现且账户 1 与调用此 api 的经过身份验证的账户不是朋友,则为 NULL
- 如果请求帐户和帐户 1 都是朋友,即他们在 Friendship 表中有一个条目,即使帐户 1 不可发现,它也应该返回帐户 1 的详细信息。
【问题讨论】:
标签: django django-models django-forms django-rest-framework django-views