标签: activeadmin

如何在ActiveAdmin中将链接添加回应用程序?

我需要在ActiveAdmin页面中添加一些指向应用程序某些页面的链接.我可以使用侧边栏来完成此操作,但我必须为每个资源重复代码.有没有向标题添加自定义链接?或者为所有资源定义一个侧边栏?

ruby-on-rails activeadmin

7
推荐指数
2
解决办法
4359
查看次数

在Active Admin中禁用CSV下载

我正在使用Active Admin gem,我想隐藏或删除每个模型的索引页面上的链接,允许用户以CSV,XML或JSON格式下载数据.有没有办法做到这一点?

ruby ruby-on-rails-3 activeadmin

7
推荐指数
4
解决办法
5013
查看次数

在Activeadmin中删除回形针附件

我正在使用paperclip将图像附件添加到多个模型和Activeadmin以提供简单的管理界面.

我在activeadmin模型文件中有这个代码,允许上传图片:

form :html => { :enctype => "multipart/form-data"} do |f|
f.inputs "Details" do
  f.input :name
  f.input :subdomain
end
f.inputs "General Customisation" do
  f.input :standalone_background,  :hint => (("current image:<br/>").html_safe + f.template.image_tag(f.object.standalone_background.url(:thumb))).html_safe, :as => :file
end
end
Run Code Online (Sandbox Code Playgroud)

哪个工作正常.我正在附加的所有图像都是可选的,因此我想让用户选择删除以前添加的图像,但无法解决如何在Activeadmin中执行此操作.我见过的所有示例都是针对通过单独的has_many关联管理附件而不是主模型的一部分的情况.

有谁知道这样做的方法?

ruby-on-rails paperclip activeadmin

7
推荐指数
1
解决办法
2221
查看次数

如何在ActiveAdmin gem中创建自定义页面

Ruby 2.0,Rails 4.0,PSQL 9.3

在ActiveAdmin文档中有一个示例:

ActiveAdmin.register_page "My Page" do
  content do
    para "Hello World"
  end
end
Run Code Online (Sandbox Code Playgroud)

我在哪里放这个代码?文件说:

在上面的示例中,将在/ admin/my_page创建一个新页面,标题为"我的页面",内容为"Hello World".

这意味着这样的文件会以某种方式自动创建?不过,我创建了一个名为import.rbapp/admin的文件,菜单中的Import项确实出现了.但是,我无法使用HTML,因为此文件是.rb而不是.erb.我想,为了能够使用html,我需要在方法中创建一个partial和den渲染它content.但当我看到下面app/views没有admin文件夹(只layouts).这是否意味着我需要创建该文件夹adminapp/views?如果是的话,我应该把我的部分放在哪里 - 直接放在app/views/admin新文件夹下面或下面app/views/admin/import

我很抱歉菜单问题,但ActiveAdmin的文档非常适中.如果有人能够提供有关在ActiveAdmin中为新页面创建和添加内容所需步骤的详细说明,我将不胜感激.

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

7
推荐指数
1
解决办法
5215
查看次数

如何停止active_admin css.scss文件更改我的应用程序的整个外观

我有一个ruby on rails项目,ruby2和rails4.我已经安装了bootstrap-sass gem.我最近安装了activeadmin gem,它将一个文件active_admin.css.scss添加到我的app/styles文件夹中:

// SASS variable overrides must be declared before loading up Active Admin's styles.
//
// To view the variables that Active Admin provides, take a look at
// `app/assets/stylesheets/active_admin/mixins/_variables.css.scss` in the
// Active Admin source.
//
// For example, to change the sidebar width:
// $sidebar-width: 242px;

// Active Admin's got SASS!
@import "active_admin/mixins";
@import "active_admin/base";

// Overriding any non-variable SASS must be done after the fact.
// For example, to change the default status-tag …
Run Code Online (Sandbox Code Playgroud)

sass activeadmin twitter-bootstrap ruby-on-rails-4

7
推荐指数
2
解决办法
2852
查看次数

具有Active Admin的嵌套has_many资源表单不会进行更新

我无法弄清楚如何在Active Admin中使用嵌套资源输入助手,以允许我更新"父"记录的相关记录的值.

我正在尝试生成更新的模型是这样的:

class Page < ActiveRecord::Base
  has_many :page_attributes
  accepts_nested_attributes_for :page_attributes, allow_destroy: true
end
Run Code Online (Sandbox Code Playgroud)

哪里PageAttribute有两个属性,:key:value

而ActiveAdmin模型是:

ActiveAdmin.register Page do
  permit_params page_attributes_attributes: [:key, :value, :_destroy => true]

  form do |f|
    f.inputs do
      f.has_many :page_attributes, allow_destroy: true, heading: 'Parts' do |page_part|
    page_part.input :key
    page_part.input :value
      end
    end

    f.actions
  end
end
Run Code Online (Sandbox Code Playgroud)

但是当我调用http://localhost:3000/admin/pages/2/edit并更改现有属性的值时(或者当我检查"删除"复选框时),会发生什么,PageAttribute即创建模型的新记录并保持现有关联不变.

我通读了有关嵌套资源Active Admin文档,以及一堆SO帖子,但无法弄清楚我做错了什么:(

ruby-on-rails nested-attributes activeadmin

7
推荐指数
1
解决办法
6756
查看次数

将参数传递给Active Admin中的新操作

我有两个相关的模型,Bunny has_many BunnyData(属于Bunny).从特定Bunny的显示页面(在Active Admin中),我想创建一个链接来创建相关的BunnyData.我尝试了几种不同的方法,没有成功,我正在尝试这样做:

sidebar :data, :only => :show do
  link_to 'New Data', new_admin_bunny_datum(:bunny_id => bunny.id)
end
Run Code Online (Sandbox Code Playgroud)

生成的链接最终会像:

.../admin/bunny_data/new?bunny_id=5

但是当你转到那个页面时,Bunny的下拉列表被设置为空白默认值,而不是显示ID为5的Bunny名称.

提前致谢.

ruby-on-rails activeadmin

7
推荐指数
1
解决办法
6059
查看次数

活动管理员:无法访问显示/编辑页面

我遇到Active Admin问题.以下是版本:

  • 红宝石'2.2.1'

  • rails'4.2.0'

  • activeadmin:1.0.0.pre1

  • arbre:1.0.3(提到这个,因为它似乎与我的问题有关联)

我们升级到rails 4.2并且还必须升级activeadmin(从0.5开始).经过几次调整(特别是授权系统),一切似乎都很好,除了一个大问题:我只能访问索引页面.当转到带有ID的页面时(例如:" http:// localhost:3000/admin/companies/2968 "),我收到此错误:

没有路由匹配{:action =>"edit",:controller =>"admin/companies",:format => nil,:id =>#{User id:nil,[所有具有nil值的用户属性]}}.缺少必需的密钥:[:id]

看起来param [:id]以某种方式变为空用户,这当然会让它破裂.

这就是我所知道的:

  • 当我将一个binding.pry放在我的ApplicationController上并检查params时,我得到{:action =>"edit",:controller =>"admin/companies",:format => nil,:id => 2968}(所以这里没问题)

  • 引发错误的行是:

active_admin /资源/ show.html.arb

- > arbre/element/builder_method.rb #insert_tag

- > arbre/element/builder_method.rb #build_tag

- > actionpack/actiondispatch/journey/formatter#generate(调用此方法时,path_parameters ID值已损坏,从而引发错误)

知道为什么我的ID参数没有正确解释/我可以进一步查看的地方吗?

编辑>>我在我的routes.rb中有这个

ActiveAdmin.routes(self)
devise_for :admin_users, ActiveAdmin::Devise.config
Run Code Online (Sandbox Code Playgroud)

并且生成的路线看起来很好用rake路线(在这个特定的例子中,我有admin/companies#edit admin_company GET /admin/companies/:id(.:format)

EDIT2 >>如果不清楚,这种情况发生在所有节目页面上.如果我去http:// localhost:3000/admin/projects /例如,它工作正常,但http:// localhost:3000/admin/projects/23815给了我id =空用户以及

ruby ruby-on-rails actionpack activeadmin arbre

7
推荐指数
1
解决办法
589
查看次数

可以将动作按钮添加到activeadmin上的仪表板表中吗?

我有这个代码在activeadmin仪表板上创建一个表:

columns do 
  column do
    panel "New Mentor's requests" do
      table_for User.where(mentor_request: true) do |t|
        t.column("Id") { |user| user.id }
        t.column("Name") { |user| user.account.full_name }
        t.column("Email") { |user| user.account.email }
        t.column("Organization") { |user| user.organization.name }

      end

    end
  end
end
Run Code Online (Sandbox Code Playgroud)

有没有办法像其他资源一样添加"动作"?我的意思是"新的,编辑,删除",但一个自定义的.

我尝试了"actions"标签,但是我得到了一个未定义的方法.

ruby activeadmin

7
推荐指数
1
解决办法
2484
查看次数

Rails 5活动管理员安装问题

我是rails的新手,并尝试在最新版本的ruby 2.3.0和rails5上添加活动管理员.我在gem文件中添加了以下行:

gem 'inherited_resources', github: 'activeadmin/inherited_resources'
gem 'activeadmin', github: 'activeadmin'
Run Code Online (Sandbox Code Playgroud)

捆绑安装,然后我运行服务器,我收到以下错误:

C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/bundler/gems/inherited_resources-6fa6e5b9d29c/lib/inherited_resources.rb:30:in `block in <top (required)>': break from proc-closure (LocalJumpError)
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:43:in `instance_eval'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:43:in `execute_hook'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:50:in `block in run_load_hooks'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:49:in `each'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:49:in `run_load_hooks'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/actionpack-5.0.1/lib/action_controller/api.rb:145:in `<class:API>'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/actionpack-5.0.1/lib/action_controller/api.rb:88:in `<module:ActionController>'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/actionpack-5.0.1/lib/action_controller/api.rb:5:in `<top (required)>'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `require'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `block in require'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `require'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/jbuilder-2.6.1/lib/jbuilder/railtie.rb:20:in `block (2 levels) in <class:Railtie>'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:43:in `instance_eval'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:43:in `execute_hook'
        from C:/RailsInstaller/Ruby2.3.0/lib/ruby/gems/2.3.0/gems/activesupport-5.0.1/lib/active_support/lazy_load_hooks.rb:33:in `block in on_load'
        from …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails activeadmin

7
推荐指数
1
解决办法
359
查看次数