我有两个实体:文章和用户。用户可以撰写关于文章的评论,但是指定的用户可能只写一篇关于指定文章的评论。因此,可以通过article_id
和user_id
确定评论。
评论的经典REST GET请求是:/comment/:id
。但在我的情况下,我没有comment_id因为它没用。我想到了/comment/:article_id/:user_id
或/comment/:article_id!:user_id
GET请求。
此类案件的最佳做法是什么?
答案 0 :(得分:2)
正如你所说,标准表格将是:
/comment/{comment_id}
在你的情况下,我可能会去:
/user/{userId}/comment/{articleId}
要么
/user/{userId}/article/{articleId}/comment
请注意,这完全基于我所看到的,而不是基于任何正式的建议。
答案 1 :(得分:1)
我不会将缺少的评论称为“无用”,因为这种情况恰好是您需要的时候。如果可能的话,你应该在你的评论表中创建一个代理主键(没有商业意义并由你的数据库自动创建) - 而不是userID + articleID的复合键。
当需求发生变化时,这将允许更大的灵活性。也许用户可以发布更多评论或者需要进行线索评论。
如果数据库不可更改,我同意@Gerino提供的URL