Tag: activeadmin

ActiveAdmin不保存has_many嵌套对象

我似乎无法找出为什么我的has_many记录不会保存。 我在模型中使用has_one进行测试并且它工作正常,但是当我将其更改为has_many它不起作用。 我检查了几个类似的stackoverflowpost,我似乎有这个正确,但它不起作用。 activeadmin中的嵌套表单不保存更新和ActiveAdmin表单不保存嵌套对象 这适用于Rails version 5.1.0.alpha和Activeadmin version 1.0.0.pre4 我没有得到任何错误,也没有看到嵌套对象被创建虽然我在这里创建一个对象时看到params是输出 Started POST “/admin/abq_districts” for ::1 at 2016-12-05 10:04:44 -0700 Processing by Admin::AbqDistrictsController#create as HTML Parameters: {“utf8″=>”✓”, “authenticity_token”=>”bHzfUG8xIMI66tTHNwSmL5FVnaa4nyuzJ3AM8tnLJSq69TLP1o8iUcLLeNnoS0FVgA8ju3x7Ioc+EV4xRv/T7Q==”, “abq_districts_district”=>{“name”=>”test district”, “title”=>””, “sub_title”=>””, “paragraph”=>””, “sections_attributes”=>{“0″=>{“text”=>”test section”}}}, “commit”=>”Create District”} AdminUser Load (1.0ms) SELECT “admin_users”.* FROM “admin_users” WHERE “admin_users”.”id” = $1 ORDER BY “admin_users”.”id” ASC LIMIT $2 [[“id”, 1], […]

has_many association sate check执行N + 1查询活动管理员

Model Strucure:用户有许多订阅和博客,订阅has_many优惠券。 我已经包含了has_many表,但我需要对每个订阅执行状态检查所以如果我执行在作用域集合中的查询,那么它将使所有用户只有有效的订阅。 那么如何避免N + 1查询并执行状态检查。 def scoped_collection end_of_association_chain.includes(:subscriptions, :blogs) end index do column :email column “referrer” do |user| subscription = user.subscriptions.valid.first subscription.referrers.first.code if subscription end column “blog_id” do |user| user.blog.id if user.blog end end

ActiveAdmin:按关联排序(belongs_to)

我有一个索引管理员视图,我正在显示一个关联的模型City 。 我希望能够按城市名称排序,但是当我单击列标题进行排序时,我收到以下错误: ActiveRecord::StatementInvalid in Admin/deals#index SQLite3::SQLException: no such column: cities.name: SELECT “deals”.* FROM “deals” ORDER BY cities.name desc LIMIT 30 OFFSET 0 索引视图 ActiveAdmin.register Deal do index do column :id column :city end … end 模型 class Deal < ActiveRecord::Base belongs_to :city end 我怎么能按城市排序?

在Active Admin Gem中,如何修改资源视图?

我在Rails项目中实现了ActiveAdmin。 我有一个名为“客户”的资源。 在导航栏中,有一个名为“新客户”的选项来创建客户。 如何更改此新客户的视图? 当我点击“新客户”按钮时,它必须接受来自我的电子邮件,它应该发送该电子邮件ID的邀请。

计算Active Admin仪表板(Rails,Active admin 1.0,Postgresql数据库,postgres_ext gem)中序列化属性(数组)中值的出现次数

我想要一个基本表来总结数组中值的出现次数。 我的应用程序是一个每日交易应用程序,旨在了解更多Ruby on Rails。 我有一个模型交易,它有一个名为Deal_goal的属性。 它是一个在数组中序列化的多重选择。 这是来自schema.db的deal_goal: t.string “deal_goal”,:array => true 所以交易A可以有交易=目标= [交通,资格]和另一笔交易可以有deal_goal = [品牌,交通,收购] 我想要构建的是我的仪表板中的一个表,它将采用每种类型的目标(数组中的每个值)并计算其deal_goal的数组将包含此类目标并计算它们的交易数。 我的目标是拥有这张桌子: 我怎样才能做到这一点? 我想我需要为每种类型的值对每个deal_goal数组进行分组,然后计算这些目标在数组中出现的次数。 我对RoR很新,无法做到。 这是我到目前为止的代码: column do panel “top of Goals” do table_for Deal.limit(10) do column (“Goal”), :deal_goal ???? # add 2 columns: ‘nb of deals with this goal’ ‘Share of deals with this goal’ end end 任何帮助将非常感激!

在ActiveAdmin索引视图列中显示子/嵌套属性

我试图在ActiveAdmin中显示嵌套属性的值。 我的代码如下: index do column :code column ‘Sales Agent’ do |client| client.sales_agent.agent_name end end 这给了我: NoMethodError in Admin/client_branches#index Showing /Users/constantlm/.rvm/gems/ruby-1.9.2-p290/gems/activeadmin-0.4.3/app/views/active_admin/resource/index.html.arb where line #1 raised: undefined method `agent_name’ for nil:NilClass 我不明白为什么这不起作用,因为当我做以下事情时: index do column :code column ‘Sales Agent’ do |client| raise client.sales_agent.agent_name.inspect end end 它输出: RuntimeError in Admin/client_branches#index Showing /Users/constantlm/.rvm/gems/ruby-1.9.2-p290/gems/activeadmin-0.4.3/app/views/active_admin/resource/index.html.arb where line #1 raised: “Peter John” […]

如何在activeadmin表单中显示自定义html

如何在activeadmin表单中显示自定义html 我想在表单中显示带有一些动态值的h1头, 我怎么能得到它? 预期 exsisting_categories = “” ActsAsTaggableOn::Tag.all.each do |t| exsisting_categories += “#{t.name}, ” end =============> %h1 = exsisting_categories f.inputs “Exsiting Categories” do text_area_tag :exsisting_categories, exsisting_categories, :input_html => { :disabled => true } end

如何在ActiveAdmin中覆盖“after_sign_up_path_for”?

我正在构建一个Rails应用程序(使用ActiveAdmin和Devise ),我试图覆盖after_sign_up_path_for以在注册后更改重定向。 我从设计中遵循了这个教程 ,但我的RegistrationsController从未被调用过。 我想它可能与ActiveAdmin有点不同。 我还尝试了其他解决方案,我发现堆栈溢出没有任何运气。 这是我的路线 : Rails.application.routes.draw do devise_config = ActiveAdmin::Devise.config devise_config[:controllers][:omniauth_callbacks] = ‘users/omniauth_callbacks’ devise_config[:controllers][:registrations] = ‘registrations’ devise_for :users, devise_config ActiveAdmin.routes(self) # other routes end 而我的RegistrationsController :(从未调用过) class RegistrationsController < ActiveAdmin::Devise::RegistrationsController protected def sign_up(_resource_name, _resource) true end def after_sign_up_path_for(_resource) root_url end end 谢谢你的帮助 ! 我的项目 : Rails 4.2.6 ActiveAdmin 1.0.0.pre2 设计3.5.9

Rails绘制进度条而不是整数值

我现在使用ActiveAdmin作为Rails网站的管理面板。 在团队的索引页面上,它将团队的分数显示为整数。 而不是显示整数,有没有办法显示静态进度条,规模为100? 抱歉我的英语不好。 谢谢你的帮助。

无法使用skip_before_filter在Rails中使用ActiveAdmin

我正在使用devise gem进行身份validation,并在我的ApplicationController中使用以下的before_filter: before_filter :require_login def require_login unless user_signed_in? || params[:controller] == ‘devise/sessions’ flash[:error] = “You must be logged in to access that page.” redirect_to new_user_session_path end end 我最近实现了ActiveAdmin gem并尝试让skip_before_filter为ActiveAdmin工作,以便我可以访问ActiveAdmin。 我尝试了本文中概述的方法,将以下内容添加到config / initializers / active_admin.rb: config.skip_before_filter :require_login 并将以下内容添加到我的一个管理模型文件listing.rb中: ActiveAdmin.register Listing do controller do skip_before_filter :require_login end end 但即使在重新启动服务器和浏览器之后,它似乎也无法工作。 我究竟做错了什么?