Помогите мне с параметрами строки запроса (Rails) - PullRequest
0 голосов
/ 02 января 2011

Я создаю новостную рассылку.

Каждое письмо содержит ссылку для редактирования вашей подписки:

<%= edit_user_url(@user, :secret => @user.created_at.to_i) %>

: secret => @ 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 - это «create_at.to_i» для конкретного пользователя.

У вас есть идеи, почему?

1 Ответ

2 голосов
/ 02 января 2011
if params[:secret] == @user.created_at.to_i.to_s

Параметр является строкой, а не целым числом.

...