标签: activeadmin

使用 hstore 过滤 activeadmin

我想将 activeadmin 过滤器与 hstore 一起使用:

在模型中,我有房间的柱设施。

我想做这样的事情:

过滤器 :amenities, :as => :select, :collection => proc {Room.all.map{|r| r.便利设施} }

ruby ruby-on-rails activeadmin

2
推荐指数
1
解决办法
1816
查看次数

在 Active Admin 中显示来自两个或多个模型(具有相同数据结构)的数据

我们正在使用 Active Admin 和 Rails 构建一个应用程序。它有一系列具有相同数据结构的模型。

我们现在想要一个视图,将这些模型中的所有数据一起显示在一个表中。

分成许多模型的原因是它们都来自不同的来源。

所以作为管理员我想一起查看所有数据。

该数据是只读的,因此无需写入。

使用下面的代码,我能够将所有数据与自定义页面一起呈现,但这并没有利用 ActiveAdmin 内置的表呈现,因此毫无意义。请参阅下面的屏幕截图和使用的代码。

当前代码的屏幕截图

ActiveAdmin.register_page "Top Sellers" do
    content do
        table_for @items = Dingoat.all + Dingobe.all do
            column "Product Name", :ProductName
            column "Start Date", :StartDate
            column "End Date", :EndDate
        end

    end

end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails activeadmin

2
推荐指数
1
解决办法
1342
查看次数

Ruby - ActiveAdmin CSV 自定义导入

目前我有一个 ActiveAdmin 页面,它从 CSV 文件获取数据以填充数据库表(用户)。该表有一个唯一标识符,该标识符不是关系中使用的ID(供用户查看的用户友好代码)。该页面通过“active_admin_import”执行此操作

现在,我想要同样的东西填充另一个表(user_paths),问题是,该表使用“users”表中的外键,所以我希望 CSV 文件包含“users”表中的这个唯一标识符。

有什么解决办法吗?

ruby csv ruby-on-rails activeadmin

2
推荐指数
1
解决办法
1973
查看次数

Rails admin 未初始化常量 Country::Person

当我单击rails_admin 导航中的国家/地区时,我得到

NameError in RailsAdmin::Main#index

uninitialized constant Country::Person

raise NameError.new("uninitialized constant #{candidates.first}", candidates.first)
Run Code Online (Sandbox Code Playgroud)

我使用的是用户模型而不是人员。我想我需要以某种方式配置它。但到哪里去做呢?

这是我的 Rails 管理初始化程序

  ## == Devise ==
   config.authenticate_with do
     warden.authenticate! scope: :user
   end
   config.current_user_method(&:current_user)

  ## == Cancan ==
   config.authorize_with :cancan 

  ### More at https://github.com/sferik/rails_admin/wiki/Base-configuration

  config.model "User" do
      edit do
        field :admin
        field :username
        field :email
        field :password
      end
    end

  config.actions do
    dashboard                     # mandatory
    index                         # mandatory
    new
    export
    bulk_delete
    show
    edit
    delete
    show_in_app

    ## With an audit adapter, you can add:
    # history_index
    # history_show …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails activeadmin

2
推荐指数
1
解决办法
3067
查看次数

如何使用从 ERB 部分呈现的 ActiveAdmin 编辑表单中的选项卡

由于多种技术原因,我不得不将我一直使用的 ActiveAdmin 编辑表单更改为 ERB 部分。

该表格非常庞大,我必须将其分成多个选项卡。尝试通过<% tabs do %>在 ERB 部分中使用来添加选项卡时,输出中会出现以下错误rails server

Completed 500 Internal Server Error in 209ms

ActionView::Template::Error (undefined method `tabs' for #<#<Class:0x007fb1827cdbf8>:0x007fb181b16d60>):
    1: <%= semantic_form_for [:admin, @consignment], builder: ActiveAdmin::FormBuilder, html: { enctype: 'multipart/form-data' } do |f| %>
    2:   <% f.semantic_errors *f.object.errors.keys %>
    3:   
    4:   <% tabs do %>
    5:   
    6:     <% tab 'Foo' do %>
    7:   
  app/views/admin/consignments/_form.erb:4:in `block in _app_views_admin_consignments__form_erb__783297827544755550_70200180247600'
  app/views/admin/consignments/_form.erb:1:in `_app_views_admin_consignments__form_erb__783297827544755550_70200180247600'
Run Code Online (Sandbox Code Playgroud)

我知道我可能必须在某个地方包含一个帮助程序才能呈现选项卡,但我不确定要使用哪个帮助程序以及在哪里包含它。

ruby ruby-on-rails formtastic activeadmin ruby-on-rails-4

2
推荐指数
1
解决办法
2479
查看次数

当在 Rails 中传递带有符号和对象的数组时,link_to 帮助器会扩展为什么?

在 Rails 中(特别是在 ActiveAdmin 中),带有作为第二个参数传递的数组的 link_to 帮助器会做什么?这方面的文档在哪里?

我有这个代码:

index pagination_total: false do column :name, :sortable => :first_name do |user| link_to user.full_name, [:admin, user] end

那有什么作用?[:admin, user] 在这里做什么?

这里一件令人困惑的事情是我的 ActiveAdmin 面板定义为:

ActiveAdmin.register Promotions::User, as: "User" do

因此,链接实际上是在模块前面加上的,如下所示:

admin_promotions_users_path这是我不想要的。这会导致错误,因为它as:会覆盖 ActiveAdmin path_helper。我想要的是:

admin_users_path

简而言之,我认为这里的错误是,link_helper当传递带有符号对象的数组时,我不知道 a 扩展为什么。

ruby-on-rails activeadmin

2
推荐指数
1
解决办法
802
查看次数

ActiveAdmin:用户模型上的member_action“批准”

我想在 ActiveAdmin 中的用户模型上添加一个名为approve的member_action。我查看了文档,但一切都不一样,我对如何做到这一点感到很困惑。到目前为止,我只显示批准链接(在“查看”、“编辑”和“删除”旁边)。

管理员/用户.rb:

member_action :approve, method: :post do
    user = User.find params[:id]
    user.approve!
    redirect_to admin_user_path(user), notice: "Approved!"
  end
Run Code Online (Sandbox Code Playgroud)

并显示链接:

actions defaults: true do |user|
    link_to 'Approve',approve_admin_user_path(user)
end
Run Code Online (Sandbox Code Playgroud)

模型/用户.rb:

def approve!
    update(bio_validee: true)
end
Run Code Online (Sandbox Code Playgroud)

当我单击链接时,出现路由错误:

No route matches [GET] "/admin/users/21/approve"
Run Code Online (Sandbox Code Playgroud)

rake routes是做什么的(对于管理员/用户路由):

approve_admin_user POST       /admin/users/:id/approve(.:format)              admin/users#approve
        batch_action_admin_users POST       /admin/users/batch_action(.:format)             admin/users#batch_action
                     admin_users GET        /admin/users(.:format)                          admin/users#index
                                 POST       /admin/users(.:format)                          admin/users#create
                  new_admin_user GET        /admin/users/new(.:format)                      admin/users#new
                 edit_admin_user GET        /admin/users/:id/edit(.:format)                 admin/users#edit
                      admin_user GET        /admin/users/:id(.:format)                      admin/users#show
                                 PATCH      /admin/users/:id(.:format)                      admin/users#update
                                 PUT        /admin/users/:id(.:format)                      admin/users#update
                                 DELETE     /admin/users/:id(.:format)                      admin/users#destroy …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails activeadmin ruby-on-rails-4

2
推荐指数
1
解决办法
2674
查看次数

如何删除活动管理节目中的编辑按钮

我想删除活动管理显示页面上任何记录的编辑按钮,月份和年份等于当前月份和年份的记录除外。

我能够在索引中做到这一点

  if (es.month == Date.today.strftime("%m").to_i) && (es.year == Date.today.strftime("%Y").to_i )
    span link_to 'Edit', "/executive_summaries/#{es.id}/edit"
  end
Run Code Online (Sandbox Code Playgroud)

我的 Executive_summaryies.rb 包括

ActiveAdmin.register Executive::Summary do
  menu :parent => 'Reports'

  config.batch_actions = true

 . . .

  action_item :only => :show do
     link_to_function("#{ActiveAdmin::Iconic.icon(:document_stroke)} Print Executive Summary".html_safe, "javascript:print()")

  end

 . . .

 controller do

 . . . 

    def edit
      @run_js_functions = %w(ExecutiveSummaries.init)
    end

    def show
      @run_js_functions = %w(ExecutiveSummaries.accordion)
    end

    . . . 

end
Run Code Online (Sandbox Code Playgroud)

目前代码的方式是,编辑按钮显示在标题栏中(我相信默认情况下),旁边有一个打印按钮。(来自上面显示的代码)。

如何在显示/查看页面上显示当前月份和年份记录的编辑按钮?

ruby-on-rails ruby-on-rails-3 activeadmin

2
推荐指数
1
解决办法
4395
查看次数

Activeadmin 自定义控制器新操作

谁能解释一下如何自定义 Activeadmin 控制器的新操作?我有这样的课程:RoomOptionRoomOption。它们是has_many through关联的,我希望能够根据数据库中的现有内容构建RoomOptions每个新内容。RoomOptions

我有这样的代码:

controller do
    def new
      super
      Option.find_each { |option| resource.room_options.build(option: option)}
    end
end
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为没有创建选项。

ruby-on-rails activeadmin

2
推荐指数
1
解决办法
2748
查看次数

如何美化 ActiveAdmin 的 json 输出?

我有一个带有 json 字段的模型,我想美化该字段的输出。我该怎么做?

show do
  attributes_table do
    row :source_json do |model|
      model.source_json
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

当前字段如下所示:

  {"date"=>"2018-12-17", "value"=>"sample"}
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西:

  {
     "date"=>"2018-12-17",
     "value"=>"sample"
  }
Run Code Online (Sandbox Code Playgroud)

ruby json ruby-on-rails activeadmin

2
推荐指数
1
解决办法
1644
查看次数