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”?