我更改了我的显示 Controller 以通过永久链接而不是 ID 查找记录(为了 SEO 多汁)。
def show
@project = Project.find_by_permalink(params[:id])
end
但是,如果我输入 localhost:3000/projects/foo(并且没有带有 foo 永久链接的项目),我会收到 500 服务器错误而不是 404 未找到。
这是为什么,我该如何解决?
最佳答案
这可能是 2.3 添加的内容,但您可以像这样在动态查找器之后使用感叹号:
def show
@project = Project.find_by_permalink!(params[:id])
end
如果未找到任何内容,则会引发 ActiveRecord::RecordNotFound
异常。
关于ruby-on-rails - 通过永久链接查找项目,如果找不到则返回 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/679962/