如何解决即使简单的页面也需要Rails中的路由?
| 我想为站点的页脚制作一个简单的页面,讨论该项目的团队。这样的页面通常只有信息,没有什么花哨的东西。 我没有为此指定路线,只是将其基本上保存为team.html.rb在以下文件夹中:/app/views/team.html.rb 我不确定这是否是保存该文件的正确位置。一次性文件的最佳位置在哪里? 另外,我是否仍需要为此做一个路由和一个控制器,还是可以只跳过一个简单页面的内容? 谢谢!!解决方法
我正在使用控制器来传递静态页面。
这是一个类似问题的链接:
如何在Rails中做静态内容?
您还可以将静态html文件放入\'public \'文件夹中,并像这样引用它:
http:// localhost:3000 /静态文件名
,我认为这行不通,因为Rails希望所有请求都通过控制器。最简单的方法是在ѭ0的末尾执行以下操作:
match \"/:action\" => \"pages\"
然后在app/views/pages
中放入team.html.erb
。您可能还会在app/views/pages_controller.rb
中至少需要一个空白控制器:
class PagesController < ApplicationController
end
这样做的好处是,如果您碰巧需要某个“静态”页面的动态内容,则只需定义一个控制器方法即可加载它。
如果这似乎对您的网站来说有点过头了,那么您可能想要一个更轻便的框架,例如Sinatra
,路由指向控制器操作,而不是视图。
对/ team的请求将(iirc)指向application#team。如果该操作不存在,则会出现错误。如果您确实定义了该操作(调用render
,它将在/ app / views / application中查找一个名为team.html [.erb | .json | .etc]的文件
正如相关线程所指出的那样,Thoughtbot的high-voltage gem非常适合作为服务静态页面的基础。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。