加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails-构造管理员/用户/公共控制器的方式

发布时间:2020-12-17 03:12:02 所属栏目:百科 来源:网络整理
导读:虚构的Rails应用程序具有以下资源: PhotographersImagesComments 摄影师有很多图像,有很多评论 每位摄影师都有登录,能够查看,上传,编辑和删除他们的图像,评论以及他们自己的个人资料. 管理界面可用,可以编辑图像,摄影师和评论. 此外,摄影师,他们的图像和评
虚构的Rails应用程序具有以下资源:

Photographers
Images
Comments

摄影师有很多图像,有很多评论

每位摄影师都有登录,能够查看,上传,编辑和删除他们的图像,评论以及他们自己的个人资料.

管理界面可用,可以编辑图像,摄影师和评论.

此外,摄影师,他们的图像和评论可以从公共界面获得,无需登录,访问者可以添加评论.

我的问题是:什么是Rails-构建控制器的方式?我正在考虑为每个“角色”(公共,帐户,管理员)使用名称空间,如下所示:

# For administrator
Admin::PhotographersController
Admin::ImagesController
Admin::CommentsController

# For a logged in photographer
AccountController (?)
Account::ImagesController
Account::CommentsController

# For public
PhotographersController
ImagesController
CommentsController

但是 – 这些控制器的一些方法是重叠的.这是最好的方式,即使它不是那么干?

谢谢!

解决方法

如果它们重叠,您可以将基本控制器扩展到帐户/管理名称空间.例如,你做的ImagesController是每个人都能看到的动作.这正常地扩展了ApplicationController.然后你做ImageController的管理版本,并扩展ImagesController.然后在管理版本中为所需的不同行为添加/覆盖方法,或者它可能只是添加一些前过滤器(例如require_admin,例如,检查current_user是管理员用户),并在以后重定向它们.不.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读