我创建了一个标准的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
不应该这样吗?
答案 0 :(得分:1)
render/3函数有3个参数。第一个参数应该是调用render
的模块:
def render("404.html", _assigns) do
render(MyProject.PageView, "not_found.html", %{})
end
您提供了字符串"MyProject.PageView"
,而不是模块MyProject.PageView
。