Rails3.2 中partial页面层层引用的注意路径

在views 目录下有很多模块对应的视图目录,比如projects和users目录,projects目录下有两个partial页面,

projects目录

-- _project_head.html.haml

--_project_top_head.html.haml

 

 _project_head.html.haml页面中有语句render “project_top_head”,这样本身没错,当projects目录中的其他页面render "project_head"时一切显示正常。

 

当users目录中的页面通过 render "projects/project_head"时,会出现

ActionView::MissingTemplate in  User#****,

Missing partial user/project_top_head

 

这是因为user中的页面渲染 project_head 是知道是在projects路径下的partial页面,但是_project_head.html.haml是在users中被渲染的,所以 _project_head.html.haml 中

 render “project_top_head”时,“project_top_head”会被认为也是在user视图中渲染的,所以 _project_head.html.haml 中的render语句,需要修改成 render “projects/project_top_head” 

你可能感兴趣的:(技术交流,rails,rails3.2,render,partial)