我正在制作时事通讯。
每封电子邮件都包含用于修改订阅的链接:
<%= edit_user_url(@user, :secret => @user.created_at.to_i) %>
:secret =&gt; @ user.created_at.to_i 阻止用户编辑彼此的个人资料。
def edit
@user = user.find(params[:id])
if params[:secret] == @user.created_at.to_i
render 'edit'
else
redirect_to root_path
end
end
它不起作用 - 您总是被重定向到root_path。
如果我这样修改它就可以了:
def edit
@user = user.find(params[:id])
if params[:secret] == "1293894219"
...
1293894219是特定用户的“created_at.to_i”。
你有什么想法吗?
答案 0 :(得分:2)
if params[:secret] == @user.created_at.to_i.to_s
参数是一个不是整数的字符串。