我使用django tastypie构建一个简单的web api。 我有两个模型\资源:线程和用户 我想实现一个返回参与线程的所有用户的方法。
这里最好的做法是什么,在UserResource或ThreadResource中实现它?
一方面,该方法需要获取用户列表(似乎符合get_object_list方法),另一方面,操作本身会查询线程实例以检索其用户。
我应该在哪里实施该方法?
答案 0 :(得分:1)
从你的问题
返回参与线程的所有用户。
所以基本上,你的资源是User,因此该方法肯定应该在UserResource类中。
您只检索特定线程的用户这一事实与过滤有关:操作不应该查询线程实例以检索其用户,但它应该采取一些参数(例如线程ID)和查询所有用户,按该ID过滤。
当然,实施应该主要受应用程序需求的影响。
我还建议您查看nested resources,这可能更适合您的需求。