首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于后端管理系统设置的Rails最佳实践?

用于后端管理系统设置的Rails最佳实践?
EN

Stack Overflow用户
提问于 2011-09-16 08:21:40
回答 1查看 3.3K关注 0票数 7

我们有一个站点,我们有一个后端管理界面,和一个前端显示我们的信息。我们正在使用设计来确保身份验证。

后端应该允许正常的CRUD类型编辑我们的模型对象。景观和布局也与正面完全不同。在Rails 3中实现这一点的最佳实践是什么?

我们的两种做法是:

  1. 管理视图文件夹包含所有视图特定的代码,以及控制器文件夹中的管理文件夹包含控制管理特定访问的所有控制器。
  2. 一种有一组视图和控制器的条件逻辑系统,使用if语句检查用户是否处于管理模式。

这是更多的建议,或者如果我们错过了另一个方法,请告诉我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-16 08:43:31

第一个解决方案更好,但是对于这些情况,创建了namespaces,最佳实践是在需要对用户站点和管理区域进行相关区分时使用名称空间。了解更多关于it的信息,这里

目录结构应该如下所示:

代码语言:javascript
复制
controllers/
     |--admin/
        |--posts_controller.rb

在您的路由中,您将所需的所有内容放入管理命名空间:

代码语言:javascript
复制
namespace :admin do
  resources :posts, :comments
end

您的控制器应该有一个admin文件夹,管理区域中的控制器看起来如下所示:

代码语言:javascript
复制
class Admin::PostsController < ApplicationController
end

您还应该在视图中包含一个admin文件夹,在该文件夹中放置相应的视图:

代码语言:javascript
复制
views/
   |--admin/
        |--posts/
             |--index.html.erb
             |--...

您也可以命名您的模型,但这取决于您的需要,它是好的,当您需要有不同的模型具有相同的名称。例如,如果管理用户需要不同的表,普通用户需要不同的表。就我个人而言,我不会使用模型名称空间,只是在非常合理的情况下。

第二个选择,我认为会引起很多头痛,你会迷失在if声明中,我不建议你这么做。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7441939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档