Я использую следующее для своих клиентов, чтобы отписаться от моей рассылки;
def index
@user = User.find_by_salt(params[:subscribe_code])
if @user.nil?
flash[:notice] = "the link is not valid...."
render :action => 'index'
else
Notification.delete_all(:user_id => @user.id)
flash[:notice] = "you have been unsubscribed....."
redirect_to :controller => 'home'
end
end
моя ссылка выглядит так;
http://site.com/unsubscribe/32hj5h2j33j3h333
, поэтому приведенное выше сравнение случайной строки с полем в моей пользовательской таблице и, соответственно, удаление данных из таблицы уведомлений.
Мой вопрос; этот подход безопасен? Есть ли лучший / более эффективный способ сделать это?
Все предложения приветствуются.