【发布时间】:2017-05-31 07:34:08
【问题描述】:
我是 ROR 的新手。并为名为 activeadmin 的管理仪表板安装一个 gem,但现在我想在该管理 gem 中创建更多凝乳。我不能使用 scafold,因为它会在 app 文件夹中创建函数。
请指导我更好的方法
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 rubygems activeadmin
我是 ROR 的新手。并为名为 activeadmin 的管理仪表板安装一个 gem,但现在我想在该管理 gem 中创建更多凝乳。我不能使用 scafold,因为它会在 app 文件夹中创建函数。
请指导我更好的方法
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 rubygems activeadmin
有很多documentation。还有一个wiki,其中包含指向教程和示例应用程序的链接。
【讨论】:
在 ActiveAdmin 面板中添加模型。您需要添加一个名称与相应模型名称相同的文件。 E-g 要在 activeadmi 中添加 Employee 模型,请在 app/admin 文件夹中添加 employee.rb 文件。换句话说,创建一个文件 app/admin/employee.rb 并通过添加以下代码来注册列和操作。
ActiveAdmin.register Employee do
#remove unnesecary UI elements and name report
config.clear_action_items!
actions :all, except: [:edit, :destroy]
config.batch_actions = false
menu :label => proc{ "Employee Report" }
#Narrow filters to useful list
filter :FirstName
filter :LastName
filter :Title
#common queries
end
【讨论】:
注册我们的三个模型:
rails generate active_admin:resource Genre
rails generate active_admin:resource Author
rails generate active_admin:resource Book
首先,更改显示的列。 Active Admin 显示您的对象具有的所有字段的列,但在这种情况下,我们将删除 Created At 和 Updated At 列,并添加作者姓名和流派名称列。这是在 app/admin/book.rb 中的 index 方法中完成的,其中指定了包含的列。
index do
column :name
column :author
column :genre
column :price
end
有关 Active admin CRUD 功能,请参阅以下博客 https://www.sitepoint.com/easy-admin-interfaces-active-admin-rails/
【讨论】: