作为一种方法,您可以创建一个单独的模块并将其导入web.ex
到controller
函数中的文件中.
像这样:
defmodule MyApp.Web do # Some code... def controller do quote do # Some code ... import MyApp.CustomFunctions # Some code ... do end # Some code... end
通常,它们将在插件内,并添加到路由管道中。
该示例在Phoenix编程中使用:
他们定义了一个Rumbl.Auth
带有authenticate_user
功能的模块
他们通过将插头插入路由器 import Rumbl.Auth, only: [authenticate_user: 2]
然后,他们通过它管道请求- pipe_through [:browser, :authenticate_user]
。