无法将我的错误模板放在错误文件夹之外
Can't put my Error template outside the error folder
我创建了一个标准的 not_found 页面,只要我将它放在 "web/templates/error" 文件夹 (not_found.html.eex
) 中,它就可以正常工作。
我正在使用(在 error_view.ex
中):
def render("404.html", _assigns) do
render("not_found.html", %{})
end
当我尝试将其移动到另一个文件夹(在这种特殊情况下为标准 "web/templates/page" 文件夹)时,我收到 "Server internal error"
消息,该消息应该出现,因为没有匹配的渲染子句或没有模板被发现。模板在那里,我尝试过不同的文件夹。
我在 error_view.ex
:
中使用这个渲染函数
def render("404.html", _assigns) do
render("MyProject.PageView", "not_found.html", %{})
end
这行不通吗?
render/3 函数有 3 个参数。第一个参数应该是调用 render
的模块:
def render("404.html", _assigns) do
render(MyProject.PageView, "not_found.html", %{})
end
您提供了字符串 "MyProject.PageView"
而不是模块 MyProject.PageView
。
我创建了一个标准的 not_found 页面,只要我将它放在 "web/templates/error" 文件夹 (not_found.html.eex
) 中,它就可以正常工作。
我正在使用(在 error_view.ex
中):
def render("404.html", _assigns) do
render("not_found.html", %{})
end
当我尝试将其移动到另一个文件夹(在这种特殊情况下为标准 "web/templates/page" 文件夹)时,我收到 "Server internal error"
消息,该消息应该出现,因为没有匹配的渲染子句或没有模板被发现。模板在那里,我尝试过不同的文件夹。
我在 error_view.ex
:
def render("404.html", _assigns) do
render("MyProject.PageView", "not_found.html", %{})
end
这行不通吗?
render/3 函数有 3 个参数。第一个参数应该是调用 render
的模块:
def render("404.html", _assigns) do
render(MyProject.PageView, "not_found.html", %{})
end
您提供了字符串 "MyProject.PageView"
而不是模块 MyProject.PageView
。