小编Par*_*nha的帖子

当任何记录不存在时如何重定向到404页面?

例如。我有学生和教师模型。如果我访问数据库中不存在的学生或教师个人资料,它将引发为 ActiveRecord::RecordNotFound。

我已经在应用程序控制器中尝试过此操作,但仍然收到错误消息ActiveRecord::RecordNotFound而不是404 page

class ApplicationController < ActionController::Base
  rescue_from ActiveRecord::RecordNotFound, with: :render_404
end
Run Code Online (Sandbox Code Playgroud)

那么,有没有办法解决这个问题呢?

谢谢。

activerecord ruby-on-rails

3
推荐指数
1
解决办法
1044
查看次数

当用户记录不存在时,如何重定向到404页面?

例如,我有一个模型(用户模型).当用户注册帐户时,会发送一封电子邮件,提醒用户他/她的帐户已被激活.在这种情况下,如果管理员删除用户记录,然后用户单击电子邮件中的链接以查看他或她的个人资料,则会显示错误.所以,我想检查用户记录是否存在.如果它不存在,则应将用户重定向到404页面.

我已经尝试了下面的代码,但它无法正常工作.这是我尝试过的以下示例

def show
  @user = User.find(params[:id]) or raise ActionController::RoutingError.new('Not Found')
end
Run Code Online (Sandbox Code Playgroud)

那么,有解决方案吗?

谢谢.

ruby activerecord redirect ruby-on-rails url-redirection

2
推荐指数
1
解决办法
2065
查看次数