在Rails中,可以使用has_many
关联来链接到rails_admin中的集合,而不是belongs_to
中的单个项。
首先,确保你的模型中有一个has_many
关联。例如,假设你有一个User
模型和一个Post
模型,一个用户可以拥有多篇文章。在User
模型中,你可以定义如下关联:
class User < ApplicationRecord
has_many :posts
end
接下来,打开config/initializers/rails_admin.rb
文件,找到你想要配置的模型(例如User
),并添加以下代码:
RailsAdmin.config do |config|
config.model 'User' do
edit do
field :posts do
associated_collection_cache_all true
associated_collection_scope do
Proc.new { |scope|
scope = scope.limit(30)
}
end
end
end
end
end
上述代码中,我们在edit
部分配置了posts
字段,将associated_collection_cache_all
设置为true
,以确保所有相关的文章都被缓存。associated_collection_scope
定义了一个Proc,用于限制显示的文章数量。
保存文件后,重新启动Rails服务器。现在,当你在rails_admin中编辑用户时,你将看到一个多选框,其中包含与该用户关联的所有文章。
这是一个示例答案,如果你需要更多关于Rails Admin的信息,可以参考腾讯云的Rails Admin产品介绍页面:Rails Admin产品介绍。
领取专属 10元无门槛券
手把手带您无忧上云