繁体   English   中英

从子目录渲染部分

[英]Render partial from sub-directory

我的views目录结构如下:

视图

  • 按域名
    • DOMAIN1
      • user_mailer文件
        • 导航
          • _menu.html.haml
        • apply.html.haml
        • welcome.html.haml

有没有办法从apply.html.haml渲染部分而不指定完整路径? 我在其他地方读到了我能做的render :partial => "./nav/menu"但它对我不起作用。

使用render方法中的完整路径。

例如,如果您具有以下目录结构...

应用
| 意见
| - »登陆
| ----»main_template.html.erb
| ----»桌面
| ------»_home.html.erb
| ----»移动
| ------»_home.html.erb

...在main_template app/views/landing下找到调用render的main_template ,然后调用render就像这样......

render partial: 'landing/desktop/home'

render partial: 'landing/mobile/home'

基于这些 github线程,我认为目前不可能。

您可以在控制器中使用append_view_path 我这样用它:

class DemoController < SiteController
.
.
    before_filter do
        append_view_path Rails.root.join("domain/domain1/user_mailer")
    end 
...

当然,只有在这些目录中有不同的视图/部分名称时,这才有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM