如何解决过滤后获取所有关联记录
我用过滤器撞墙了。
我有两个模型和相关的 rails_admin conf:
class ImageBase < ApplicationRecord
has_and_belongs_to_many :authors,optional: true
[...]
end
class Author < ApplicationRecord
has_and_belongs_to_many :image_bases,class_name: 'ImageBase'
[...]
end
config.model 'ImageBase' do
list do
scopes [:published,:draft,nil]
filters %i[collocazione authors]
[...]
field :authors do # (4)
eager_load true
queryable true
visible true
searchable %i[name surname]
end
search_by :search_image_base_admin
end
end
我的问题是,当我在 Rails_admin 中按作者过滤 ImageBase 时,结果只显示匹配的作者,而不是与图像库记录相关的所有作者。
我需要这个主要是为了在过滤后导出数据,这不仅仅是列表视图中的问题(我可以接受)
谢谢 弗朗切斯科
解决方法
我不确定我是否理解,但您始终可以覆盖内置搜索并使用范围构建自己的搜索范围,就像这样
RailsAdmin.config do |config|
config.model ImageBase do
list do
search_by :custom_search
end
end
end
scope :custom_search,->(query) { where(name: query.reverse) }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。