标签: activeadmin

如何处理Active Admin资源中的序列化编辑字段?

我有一个模型,Domain它有一个文本字段,names.

> rails g model Domain names:text
  invoke  active_record
  create    db/migrate/20111117233221_create_domains.rb
  create    app/models/domain.rb
> rake db:migrate
==  CreateDomains: migrating ==================================================
-- create_table(:domains)
   -> 0.0015s
==  CreateDomains: migrated (0.0066s) =========================================
Run Code Online (Sandbox Code Playgroud)

我将此字段序列化为模型中的数组.

# app/models/domain.rb
class Domain < ActiveRecord::Base
  serialize :names, Array
end
Run Code Online (Sandbox Code Playgroud)

为此模型创建ActiveAdmin资源

> rails g active_admin:resource Domain
    create  app/admin/domains.rb
Run Code Online (Sandbox Code Playgroud)

然后,在app/admin/domains.rb中,我设置各种块来处理序列化字段

# app/admin/domains.rb
ActiveAdmin.register Domain do

  index do
    id_column
    column :names do |domain|
      "#{domain.names.join( ", " ) unless domain.names.nil?}"
    end
    default_actions
  end

  show do |domain|
    attributes_table …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails-3 activeadmin

10
推荐指数
1
解决办法
8776
查看次数

配置Active Admin has_many的标签

好吧,我有一个与on-to-many assoc相关的两个模型.

#models/outline.rb
    class Outline < ActiveRecord::Base
      has_many :documents
    end

#models/document.rb
    class Document < ActiveRecord::Base
      belongs_to :outline
    end

#admin/outlines.rb
    ActiveAdmin.register Outline do
      form do |f|
        f.inputs "Details" do
          f.input :name, :required => true
          f.input :pages, :required => true
          ...
          f.buttons
        end
        f.inputs "Document Versions" do 
          f.has_many :documents, :name => "Document Versions"  do |d|
            d.input :file, :as => :file
            d.buttons do
              d.commit_button :title => "Add new Document Version"
            end
          end
        end
      end
    end
Run Code Online (Sandbox Code Playgroud)

正如您在admin/outlines.rb中看到的那样,我已经尝试在has_many:documents中设置:name,在commit_button中设置:title,但这两个选项都不起作用,我也试过:legend,: title,和:label,而不是:.has_many中的名称.不工作.

这是该代码的结果: 截图

我要显示的是"文档版本"而不是"文档","添加新文档版本"而不是"添加新文档"

如果有人能有解决方案,那就太好了

ruby formbuilder formtastic ruby-on-rails-3 activeadmin

10
推荐指数
2
解决办法
8278
查看次数

活动管理员:包括Javascript

我想将Gon(https://github.com/gazay/gon)添加到我的activeadmin

但我需要添加这一行

<%= include_gon %>
Run Code Online (Sandbox Code Playgroud)

到布局的头部

但我无法弄清楚如何?

layout ruby-on-rails activeadmin

10
推荐指数
3
解决办法
1万
查看次数

Heroku上的ActiveAdmin预编译错误

您好我最近将更新推送到Heroku,突然之间Active Admin将不会预编译.给我这个错误.

Running: rake assets:precompile
       rake aborted!
       SyntaxError: cannot return a value from a constructor: "this" in class DropdownMenu
       (in /tmp/build_etr05wkfpnxp/vendor/bundle/ruby/1.9.1/gems/activeadmin-0.5.1/app/assets/javascripts/active_admin/components/jquery.aa.dropdown-menu.js.cof
fee)
       /tmp/build_etr05wkfpnxp/vendor/bundle/ruby/1.9.1/gems/execjs-
1.4.0/lib/execjs/external_runtime.rb:66:in `extract_result'
Run Code Online (Sandbox Code Playgroud)

不知道发生了什么或如何解决它.它在我的本地主机上工作得非常好,只有在我推送到heroku时才会发生.它之前在Heroku上也运行良好,我所做的只是添加一个模型.

有任何想法吗?

谢谢!

固定

https://github.com/gregbell/active_admin/issues/1939

ruby-on-rails heroku activeadmin

10
推荐指数
1
解决办法
2200
查看次数

Activeadmin阻止我的jQuery工作

我正在使用jquery拖放我的应用程序,它工作正常.

然后我添加了activeadmin,它停止了我的jquery工作.

我收到这个错误

$(".draggable_article_image").draggable is not a function
Run Code Online (Sandbox Code Playgroud)

如果我从active_admin.js中删除此行

//= require active_admin/base
Run Code Online (Sandbox Code Playgroud)

它又开始工作了.

有任何想法吗?

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

9
推荐指数
2
解决办法
3954
查看次数

按字符串过滤而不是在ActiveAdmin中选择

我有两个模型之间的belongs_to和has_many assotiations.默认情况下,activeadmin使用select输入.但就我而言,这是不可能的 - 因为我有成千上万的物品.当我尝试更改过滤器时

filter :item, as: :string
Run Code Online (Sandbox Code Playgroud)

它说

undefined method `item_id_contains' for #<MetaSearch::Searches::DeliveryTime:0x007fdd57f12db8>
Run Code Online (Sandbox Code Playgroud)

做正确的最佳方法是什么?

ruby ruby-on-rails meta-search activeadmin

9
推荐指数
1
解决办法
3371
查看次数

ActiveAdmin自动加载完整关联表

我正在开发一个使用ActiveAdmin作为其管理后端的项目.

我有两个型号,一个具有__产品的书籍型号.当我尝试在ActiveAdmin中访问产品索引视图时,它似乎尝试将完整的书籍表加载到内存中(我的数据库中有大约150万本书).CPU使用率高达100%,内存使用率达到千兆字节.

打开mysql日志记录确认这是调用此视图时发生的情况:

17 Query     SELECT `books`.* FROM `books`
Run Code Online (Sandbox Code Playgroud)

据我所知,在任何加载产品的尝试之前都会发生这种情况.

为了解决这个问题,我将模型剥离为他们的骨头:

class Product < ActiveRecord::Base
  belongs_to :book
end

class Book < ActiveRecord::Base
  has_many :products
end
Run Code Online (Sandbox Code Playgroud)

我还将AA定义缩减为最基本的形式:

ActiveAdmin.register Product do
end
Run Code Online (Sandbox Code Playgroud)

这对ActiveAdmin来说是正常的吗?这似乎不是理想的行为.

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

9
推荐指数
1
解决办法
1530
查看次数

活动管理CSV导出自定义查询作用域

我使用的是主动管理导出CSV选项.它返回与特定表相关的所有值.

我希望报告仅针对特定月份.

有人可以帮忙吗?

ruby ruby-on-rails activeadmin

9
推荐指数
1
解决办法
5982
查看次数

ActiveAdmin:选择下拉默认为开发中的当前值,但在生产中默认为空白

我有以下ActiveAdmin表单:

form do |f|
  f.inputs "Timesheet Details" do
    f.input :jobs_assigned_worker, :label => "Worker", as: :select, collection: Worker.all
    f.input :worked_time_hours,    :label => "Worked Time (Hours)"
    f.input :worked_time_mins,     :label => "Worked Time (Minutes)"
    f.input :driving_time_hours,   :label => "Driving Time (Hours)"
    f.input :driving_time_mins,    :label => "Driving Time (Minutes)"
    f.input :spent_dollars,        :label => "Extra Money Spent"
  end
  f.actions
end
Run Code Online (Sandbox Code Playgroud)

当我在编辑视图中使用此表单时,选择下拉列表会自动默认为当前值.但是在生产中,下拉列表由于某种原因默认为顶部的空白值(为什么那里的空白值呢?).

编辑

问题似乎是ActiveAdmin不理解关联,并且默认情况下无法选择关联对象.我需要弄清楚如何f.input为关联编码.表格适用于时间表.时间表has_manyJobsAssignedWorkers和每个JobsAssignedWorker都有一个Worker.

ruby forms rubygems ruby-on-rails activeadmin

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

如何将按钮添加到ActiveAdmin的索引页面

我为ActiveAdmin rescource创建了一个集合操作,并希望从资源索引页面链接到它.

但是如何自定义资源索引页面?

手册提供了一些选项,但没有在页面上添加html /按钮(或者我看不到哪里).

http://activeadmin.info/docs/3-index-pages.html

ruby-on-rails activeadmin

9
推荐指数
1
解决办法
8631
查看次数