TMB*_*TMB 5 ruby-on-rails dry controllers
设计具有管理部分和面向公众的部分的Web应用程序.感觉就像有一个面向公众的控制器只是为了"索引"和"显示"有点多余.我读过的所有建议都建议使用admin的命名空间,这很好.我只是想知道我是否应该有一个带有附加动作的控制器,比如说"list_public"或类似的东西.
我是Rails的新手,所以也许我只关心什么都没有.我只是不喜欢让所有这些控制器,视图,同名的助手分散在我的项目目录中.
有人对此有任何见解吗?提前致谢.
我想说让两个控制器(一个公共控制器和一个管理员)是最好的解决方案.
现在你可以做的是让两个控制器调用相同的方法来执行操作中的相关操作.
class MyController < ApplicationController
def show
MyModel.do_all_sorts_of_stuff
end
end
class Admin::MyController < ApplicationController
def show
MyModel.do_all_sorts_of_stuff
# Admin only stuff goes here
end
end
Run Code Online (Sandbox Code Playgroud)
小智 6
正如马特所说,但你也可以这样做:
class MyController < ApplicationController
def show
MyModel.do_all_sorts_of_stuff
end
end
class Admin::MyController < MyController
def show
super
# Admin only stuff goes here
end
end
Run Code Online (Sandbox Code Playgroud)
这意味着您可以专注于Admin :: MyController的更专业的情况,而不是重复代码.
| 归档时间: |
|
| 查看次数: |
319 次 |
| 最近记录: |