hid*_*ori 7 resources templates routes ruby-on-rails ruby-on-rails-3
我刚开始使用Rails,我不确定我做得不好.
在routes.rb我有
resources :pages
Run Code Online (Sandbox Code Playgroud)
在app/controllers/pages_controller.rb我有
class PagesController < ApplicationController
def index
end
end
Run Code Online (Sandbox Code Playgroud)
我在app/views/layouts/application.html.erb中有一个布局,在app/views/home/pages/index.html.erb中有一个模板,当我请求"/ pages"时我要渲染它.但是,我得到了错误
模板丢失了
缺少模板页面/索引,应用程序/索引{:locale => [:en],:formats => [:html],:handlers => [:erb,:builder,:coffee]}.搜索:*"/ ###/app/views"
我已经使用stackoverflow多年没有发布,但是很多不同的东西似乎触发了这个错误,很难找到我特定情况的答案.我也是菜鸟:3请帮忙!
Dav*_*acs 10
您说您必须app/views/home/pages/index.html.erb代表页面资源的索引视图.我认为该home/目录不是必需的.
换句话说,您的视图文件应该是app/views/pages/index.html.erb.
它正在寻找它,app/views/pages/index但你有它app/views/home/pages/index。这种细微的差异使得 Rails 约定丢失了。
如果您必须保留新的目录层次结构,请在控制器上执行以下操作:
class PagesController < ApplicationController
def index
render :partial => "home/pages/index"
end
end
Run Code Online (Sandbox Code Playgroud)
但是,默认情况下,如果您有一个资源,例如:pages,它会自动查找app/views/pages.
| 归档时间: |
|
| 查看次数: |
14249 次 |
| 最近记录: |