我有一个 Rails 2.1.2 站点,它只有 html 模板,例如 jobs.html.erb,所以当我请求一个 restful 资源时:
www.mysite.com/jobs/1
但是,如果我要求,它会在 html 中呈现我的工作:
www.mysite.com/jobs/1.xml
我得到错误:
模板丢失 视图路径 c:/workspace/mysite/app/views 中缺少模板作业/show.xml.erb
更糟糕的是,我还可以要求类似的东西
www.mysite.com/jobs/1.xyz
确实我看到了错误:
模板丢失 视图路径 c:/workspace/mysite/app/views 中缺少模板 jobs/show.xyz.erb
要严格呈现 html 内容,告诉 Rails 我不想呈现 .html.erb 文件以外的任何内容的最简洁和最简单的方法是什么。
需要注意的是:
- 我的一些控制器操作包含对 render() 方法的条件调用,而其他操作则使用默认的 Rails 行为,即如果您不调用 render(),则将呈现名为 youraction.html.erb 的模板。
- 我的代码没有使用 responds_to() 方法
如果解决方案不在 render/responds_to 级别,那就太好了,因为我必须修改大量操作。也许有一种方法可以配置 Rails,以便只呈现 html 模板?