Elixir 不同名称空间/作用域中的类似控制器--如何区分它们?
我在不同的作用域/文件夹中有两个类似的控制器:Elixir 不同名称空间/作用域中的类似控制器--如何区分它们?,elixir,phoenix-framework,Elixir,Phoenix Framework,我在不同的作用域/文件夹中有两个类似的控制器: MyApp.Controller1 MyApp.Namespace1.Controller1 及 如何在这些控制器中的url或路径帮助程序中引用:index 根据您的phoenix.routes,这些电话分别是: some_path(MyApp.Endpoint, :index) some_path(MyApp.Namespace1.Endpoint, :index) 详情请参见章节。根据您的phoenix.routes,这些电话分别是: so
MyApp.Controller1
MyApp.Namespace1.Controller1
及
如何在这些控制器中的url或路径帮助程序中引用
:index
根据您的phoenix.routes
,这些电话分别是:
some_path(MyApp.Endpoint, :index)
some_path(MyApp.Namespace1.Endpoint, :index)
详情请参见章节。根据您的
phoenix.routes
,这些电话分别是:
some_path(MyApp.Endpoint, :index)
some_path(MyApp.Namespace1.Endpoint, :index)
详见第章。这应该是对前面答案的评论,但太长了。 在
网站/路由器中还有第二个选项来命名路由。ex
:
scope "/namespace1" do
get "/", MyApp.Namespace1.Controller1, :index, as: "namespaced"
end
现在,您应该能够使用
某些路径(conn,:index)
和命名空间路径(conn,:index)
,而无需传递模块名称。这应该是对前面答案的注释,但太长了。
在网站/路由器中还有第二个选项来命名路由。ex
:
scope "/namespace1" do
get "/", MyApp.Namespace1.Controller1, :index, as: "namespaced"
end
现在,您应该能够使用某些路径(conn,:index)
和命名空间路径(conn,:index)
,而无需传递模块名称