【问题标题】:Which is the best use of discard (or act_as_paranoid) in rails-admin?在 rails-admin 中丢弃(或 act_as_paranoid)的最佳用途是什么?
【发布时间】:2019-05-28 21:42:06
【问题描述】:

我正在使用 gem discardrails-admin。我想知道在 rails admin 的商店中列出我的活跃用户的最佳方法,考虑到保留的用户

我在模型店里创建了一个方法:

class Shop < ApplicationRecord
  include ShopRailsAdmin

 has_many :users

 def active_users
  users.kept
 end
end

在我正在使用的 rails admin 中:

field :active_users do
  label 'Users'
end

但我收到的是 AssociationRelation 而不是 CollectionProxy,所以在视图中,关联看起来像

#&lt;User::ActiveRecord_AssociationRelation:0x00007f9c34c1f8e0&gt;

还有其他方法可以避免在模型店中定义方法吗?

PD:标签也应该是discard,但它不存在,我无法创建它。

谢谢!

【问题讨论】:

    标签: ruby-on-rails rails-admin acts-as-paranoid


    【解决方案1】:

    您需要将其定义为作用域关联

    class Shop < ApplicationRecord
      include ShopRailsAdmin
    
     has_many :users
     has_many :active_users, -> lambda { 
        where(discarded_at: nil) 
     }, class_name: 'User'
    end
    

    我假设您没有个性化 discard_column。

    Rails 管理员应该正确显示它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-07
      • 2021-03-07
      • 1970-01-01
      • 2011-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-15
      相关资源
      最近更新 更多