【问题标题】:Rails Admin filtering multiselectRails 管理员过滤多选
【发布时间】:2021-03-18 12:41:44
【问题描述】:

我有一个具有这些关联的模型:

  has_many :ad_places, dependent: :destroy
  has_many :places, through: :ad_places

在我的 Rails Admin 初始化程序中:

  edit do
    field :places do
      inline_add false
      associated_collection_cache_all true
      associated_collection_scope do
        Proc.new do |scope|
          scope = scope.order(:place_on_page)
        end
      end
    end
    field :html, :text
    field :document
  end

但我在多选中的条目不是由place_on_page 排序的,Rails Admin 的请求是ORER by places.id desc

它与this fix 修复的this guy 基本相同,只是它对我不起作用。

我错过了什么吗?

【问题讨论】:

    标签: rails-admin


    【解决方案1】:

    检查开发日志以查看正在生成什么 SQL,可能在某处还有另一个排序。修复该尝试:

    scope = scope.reorder(:place_on_page)
    

    【讨论】:

    • 感谢您的回复!我查看了日志,实际上对地点发出的唯一两个 SQL 请求是 SELECT "places".* FROM "places" INNER JOIN "ad_places" ON "places"."id" = "ad_places"."place_id" WHERE "ad_places"."ad_id" = $1SELECT "places".* FROM "places" ORDER BY places.id desc,即使使用您的解决方案,我的订单或重新排序也没有考虑在内(抱歉,我直到今天才下班)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-23
    • 1970-01-01
    • 2014-05-01
    相关资源
    最近更新 更多