我想为我在最后一刻附加的Ruby on Rails应用程序构建一个真正快速而又脏的管理后端。我已经看过activescaffold并简化并认为它们都非常有吸引力,它们应该很容易运行,但我不太明白如何设置任何一个作为后端管理页面。它们看起来像标准的Ruby on Rails生成器/脚手架一样工作,用于创建可见的前端,模型 - 视图 - 控制器 - 表名称对应。

如果玩家已经在使用并且您想尽可能地避免影响其相关文件,那么如何创建admin_players界面?

管理员无法使用原始资源的显示,编辑和索引。

有帮助吗?

解决方案

我认为命名空间是解决您遇到的问题的方法:

map.namespace :admin do |admin|
    admin.resources :customers
end

将创建路径 admin_customers new_admin_customers 等。

然后在 app / controller 目录中,您可以拥有 admin 目录。在您的管理目录中,创建一个管理员控制器:

./script/generate rspec_controller admin/admin

class Admin::AdminController < ApplicationController

  layout "admin"
  before_filter :login_required
end

然后创建一个管理客户控制器:

./script/generate rspec_controller admin/customers

从ApplicationController中获取此内容:

class Admin::CustomersController < Admin::AdminController

这将在 app / views / admin / customers 中查找视图 并期望 app / views / layouts / admin.html.erb 中的布局。

然后,您可以使用您喜欢的任何插件或代码来实际管理,简化,ActiveScaffold,无论我个人喜欢使用 resourcecs_controller ,因为它可以为您节省大量时间 REST 风格的体系结构,强迫自己沿着这条路走下去可以在其他地方节省大量时间。虽然你现在继承了这个应用程序是有争议的。

其他提示

请在 https://github.com/gregbell/active_admin 上查看active_admin。

我已经广泛使用了Streamlined。

要使Streamline正常工作,您需要创建自己的控制器 - 因此您可以将其与应用程序的其余部分完全分开运行,甚至可以在单独的“admin”文件夹和命名空间中运行它,可以使用

以下是最近的应用程序中的Customers控制器:

class CustomersController < ApplicationController
  layout 'streamlined'
  acts_as_streamlined       

  Streamlined.ui_for(Customer) do
    exporters :csv   
    new_submit_button :ajax => false 
    default_order_options :order => "created_at desc"   
    list_columns :name, :email, :mobile, :comments, :action_required_yes_no  
  end
end
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top