我是个菜鸟。
redirect_to users_url, notice: 'Succeed.'
<p id="notice"><%= notice %></p>
然后我添加message
,但失败了:
redirect_to users_url, notice: 'Succeed.', message: 'test'
<p id="notice"><%= notice %></p>
<h1><%= params[:message] %></h1> # no result
<h1><%= message %></h1> # name error
users_url
和users_path
之间的区别是什么?
答案 0 :(得分:3)
您希望通过_url
或_path
方法传递它:
redirect_to users_url(message: 'test'), notice: 'Succeed.'
这将重定向到/users
的绝对路径,将flash通知设置为“Succeed”。附加参数message
设置为“test”。
要回答第二个问题,_path
会返回路径的相对路径,而_url
会返回路径的绝对路径:
users_url # => http://www.example.com/users
users_path # => /users
_url
非常有用,例如,电子邮件或位于应用外部的链接。