我理解RESTful网站设计应该如何运作,但在实施博客时无法确定呈现表单以插入新博客文章的最佳方式。 example.com/posts/create会合理吗?这感觉就像“创建”并不安宁,就像它将信息放入URI中一样,应该简单地用PUT / POST表示。
其他人会如何做到这一点?
答案 0 :(得分:2)
请看一下Rails Routing的Rails视图。
Verb URL Controller Action Used For
GET /photos/new Photos new return an HTML form for creating a new photo
POST /photos Photos create create a new photo
因此,在您的情况下,请获取/posts/new
以获取新的帖子表单,但发布/posts
以创建新帖子。
关键是,你正在发布一篇新的博客文章,但为了做到这一点,你需要获取使你能够做到这一点的表格。在某种程度上,新的博客文章形式只是另一种(静态)资源。
答案 1 :(得分:2)
如果您不喜欢URL的感觉,请将其更改为:
GET http://example.com/posts/createform
答案 2 :(得分:0)
使用POST提交插入信息,然后让页面重定向到URL中的新ID。您不希望在URL上获得新信息,因为刷新URL的用户将发布两次。