Ruby on rails rails\u admin-基于对象\u标签\u方法自定义可搜索过滤器
我正在为练习建立一个评分系统。在rails_admin.rb中,我有:Ruby on rails rails\u admin-基于对象\u标签\u方法自定义可搜索过滤器,ruby-on-rails,ruby-on-rails-4,rails-admin,Ruby On Rails,Ruby On Rails 4,Rails Admin,我正在为练习建立一个评分系统。在rails_admin.rb中,我有: config.model Student do object_label_method do :student_code end end config.model Grade do list do field :student do searchable :student_code end field :course fie
config.model Student do
object_label_method do
:student_code
end
end
config.model Grade do
list do
field :student do
searchable :student_code
end
field :course
field :category
field :score
end
end
使用rails_admin会自动为我提供一个学生过滤器,但是它会根据学生id进行搜索。
如何在“成绩管理”视图中自定义学生筛选器,以便根据其“学生代码”属性搜索学生?像建议的文档一样使用searchable不会给出任何结果。我不确定模型
学生和成绩之间的关系,但是我有一个模型确认信
,我想在其中搜索一个列:hospitals
,这是一个有很多关联,但无法得到任何结果。当我最终发现这个问题时,我对通过DSL解决这个问题失去了希望,所以感谢@vinothini和@jxpx777!我确认以下内容仍适用于RA 2.0.0.beta:
在确认函.rb中:
class ConfirmationLetter < ApplicationRecord
has_many :bookings, dependent: :nullify, inverse_of: :confirmation_letter
...
has_many :hospitals, through: :bookings
accepts_nested_attributes_for :hospitals
...
end
如果您的object_label_方法是Student
模型的一列,那么我相信您应该能够按Student code搜索成绩列表,如下所示:
config.model 'Grade' do
configure :students do
...
searchable [{Student => :student_code}]
sortable true
filterable true
queryable true
end
list do
include_fields :hospitals, ....
end
end
这也适用于有许多关联列的情况。我知道这篇文章已经发布4年了,但我决定在这里分享我的发现,以防像我这样绝望的人想尝试一下 你找到解决办法了吗。请帮帮我。我想要类似的功能嗨,不,我没有,但是我会保持这个更新,以防我发现任何。我有同样的问题。“AnthonyWijaya”有解决方案吗?嗨,KevinZych。不幸的是没有。我决定放弃rails_admin,而是从头开始创建了一个。除此之外,还有太多的问题,我只是浏览文档无法解决。我建议你也这么做,但也许那只是我。祝你的问题好运!我尝试了一个属于协会,但没有成功。不管怎样,干得好。
config.model 'Grade' do
configure :students do
...
searchable [{Student => :student_code}]
sortable true
filterable true
queryable true
end
list do
include_fields :hospitals, ....
end
end