当我读到“Aglie web development with rails 4th”这本书时,我找到了代码
<%= button_to 'Add to Cart', line_items_path(:product_id => product) %>
如果我使用"line_items_url"
并且代码不具有:method=>:post
,
为什么?
答案 0 :(得分:4)
path
版本生成相对网址,例如/order/34/lines/
,而网址版本会生成完整网址,例如http://localhost:3000/order/34/lines/
。
当用户点击邮件客户端或外部网络邮件中的链接时,第二种表单通常用于邮件程序。
在您的网站中,您不会发现任何差异。
此外,:method=>:post
选项会向您的网络服务器发出一个帖子请求。它会通过添加一个javascript代码来实现,该代码将动态创建表单,向其添加参数并执行submit
调用以使用post方法将浏览器发送到请求的页面。
答案 1 :(得分:0)
_url
帮助程序生成包含协议和主机的URL
名称。 _path
助手只生成路径部分。