如何在“web/templates/folder/subfolder”中渲染模板

Pau*_*iro 6 phoenix-framework

从我的布局(app.html.eex文件)中,我想渲染位于我的模板文件夹(示例结构)中的子文件夹(第二级文件夹)内的模板:

/templates/layout
/templates/layout_module/header_footer/fad.html.eex
Run Code Online (Sandbox Code Playgroud)

我有所有第一级文件夹 ( layout, layout_module,...) 的视图。我正在使用:

<%= render FabricaASA.Layout_moduleView, "/header_footer/fad.html" %>
Run Code Online (Sandbox Code Playgroud)

我尝试了一些替代方案但没有成功。最好的方法是什么?

Pau*_*iro 6

我从 Chris McCord(PhoenixFramework 的创建者)那里得到了答案:https ://elixirforum.com/t/how-to-render-a-template-inside-a-web-templates-folder-subfolder/1404

web.ex文件中添加pattern选项:

use Phoenix.View, root: "web/templates", pattern: "**/*"
Run Code Online (Sandbox Code Playgroud)

然后只需使用:

<%= render FabricaASA.Layout_moduleView, "header_footer/fad.html" %>
Run Code Online (Sandbox Code Playgroud)