ruby-on-rails - 如何在 Rails 中做静态内容?

标签 ruby-on-rails ruby static-content

查看不同的选项:

一种是将静态页面放在 public/文件夹中,但我确实希望布局/应用程序的标题保持一致。

我试过了,但是我得到了一个错误:

# in routes.rb:
map.connect '*path', :controller => 'content', :action => 'show'

# in content_controller.rb:
def show
  render :action => params[:path].join('/')
end

我想要的只是一种简单的方法,只需创建一个 .rhtml 即可将我的常见问题解答、联系方式、服务条款、隐私和其他非应用程序类型的页面放在一起。谁做的?

最佳答案

对于 Rails6Rails5Rails4,您可以执行以下操作:

将下面这行放在你的 routes.rb 的末尾

  get ':action' => 'static#:action'

然后向 root/welcome 请求,将呈现 /app/views/static/welcome.html.erb

不要忘记创建一个“静态” Controller ,即使您不必在其中放置任何东西。

限制:如果有人试图访问一个不存在的页面,它将抛出一个应用程序错误。 See this solution below that can handle 404s

对于 Rails3 你必须使用 'match' 而不是 'get'

  match ':action' => 'static#:action'

关于ruby-on-rails - 如何在 Rails 中做静态内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1146624/

相关文章:

ruby-on-rails - 如何在Rails中定义自定义路径?

ruby-on-rails - 在 Rails 中使用 Javan-whenever 时如何让 cron 工作

ruby - Objective-C 是否像 Ruby 一样支持 Mixin?

grails - 从Grails应用程序中的应用程序服务器外部提供静态数据的最简单方法

ruby-on-rails - 使用 twilio 将视频 url 添加到短信或彩信

ruby-on-rails - 当图像是注册表单(或类似的东西)的一部分时,使用 Rails/Heroku 将图像直接上传到 S3

php - 什么是 SQL 支持的数字运算的更好选择 - Ruby 1.9、Python 2、Python 3 或 PHP 5.3?

ruby-on-rails - Brakeman 不使用 --skip-files 参数跳过 Gemfile.lock

eclipse - src/main/resources和src/main/webapp/resources之间有什么区别?

javascript - 关于自动版本化静态内容的问题