В Ruby on Rails, как вы можете использовать тщеславные URL, а также перенаправлять на 404? - PullRequest
0 голосов
/ 12 июня 2011

В конце моего route.rb у меня есть подстановочный знак для URL тщеславия. Тем не менее, я не могу понять, как перенаправить неизвестные имена пользователей на 404. Как вы можете это сделать?

~ в route.rb ~

# Vanity URLs
match ':username', :to => "users#show"

~ в пользовательском контроллере ~

@user = User.find_by_username(params[:username])
if @user.nil?
  render :status => 404
else
  ...
end

1 Ответ

0 голосов
/ 12 июня 2011

То, что у вас есть, все равно будет отображать шаблон по умолчанию, но с кодом ответа 404.

Попробуйте сделать так, чтобы вместо этого отображалась страница 404 по умолчанию:

render :file => "#{Rails.root}/public/404.html", :layout => false, :status => 404
...