如何在不实际渲染我的网页的情况下渲染 404?

戴夫

我想在我的 Rails 5.1 应用程序中呈现特定条件下的默认 404 页面。我的控制器中有这个

  def index
    ...
    if worker
    ...
    else
      puts "page not found"
      render :status => 404
    end
  end

但是,即使满足条件(调用了我的 404 分支),Rails 仍在尝试呈现我的 index.htrml.erb 页面,这会导致其他错误,因为预期的模型属性不存在。有没有办法可以在不呈现页面的情况下返回 404 状态代码?

阿南德·何塞

最简单的方法是使用状态代码 404 呈现 public/404,您有 404 页面布局的任何特定布局: true否则layout: false然后返回一个假值

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在不实际更新行的情况下调用`ON UPDATE CURRENT_TIMESTAMP()`?

如何在不实际滚动的情况下确定滚动方向

如何在不实际序列化对象的情况下估计Java中对象的序列化大小?

如何在不实际运行代码的情况下知道实现Comparable <>的类的排序顺序?

如何在不实际运行“ vagrant ssh”的情况下ssh变成无业游民?

如何在不实际使用<form>的情况下使用引导表单布局?

如何在不实际显示地图的情况下拍摄Google地图快照

在JavaScript中,我可以检查是否可以在不实际评估字符串的情况下评估它吗?

GIT:如何在不实际合并文件的情况下合并两个分支(简单合并)

如何在不实际导航至登录页面和输入凭证的情况下登录验收测试?

如何在不实际执行HTTP DELETE操作的情况下对其进行建模

如何在不实际将地址传递给函数的情况下实现“按引用传递”?

如何在不实际聚焦元素的情况下触发聚焦处理程序?

我如何在不实际打开浏览器并获取表内容的情况下使用硒?蟒蛇

如何在不实际调用REST API的情况下测试我的应用程序方法是否处理REST API的HTTP状态404

如何在不实际进行除法的情况下获得通过将数组划分为树而生成的数组数?

如何在不实际转换的情况下确定转换后的音频文件的理论文件大小(即,将mp3转换为wav)

如何在不实际读取数据的情况下移动FileHandle的内部位置?

如何在不实际启动活动的情况下检查外部应用程序的活动是否为“ exported = false”

如何在不实际合并的情况下“合并” git分支

如何在不实际使用通配符或shell扩展的情况下进入foo- *文件夹?

如何在不实际使用数据库软件(例如Access /本地SQL)的情况下创建简单的数据库?

如何在不实际更改当前关注的项目的情况下获得标签顺序中的下一个项目?

如何在不实际运行的情况下测试可执行文件?

如何在不实际下载资源的情况下获得资源的大小?

如何在不实际运行reboot命令的情况下检查是否具有重启权限?

如何在不实际在GUI上呈现页面的情况下,在ubuntu命令行中操作DOM?

如何在不实际执行ssh的情况下查找是否可以通过SSH访问远程主机

我可以在不实际关闭小部件的情况下使用 Dismissible 吗?