我正在使用Active Admin的应用程序,需要从选择输入中选择多个值,我添加了Select2 gem,它添加了所有相关的JS和CSS,没有任何问题,但由于某种原因,选择框似乎稍微改变它们的外观但不是完全的Select2外观,经过检查,JS看起来并不像它添加了所有正确的类......任何想法?
这是我的代码:
active_admin.css.scss
//= require select2
@import "active_admin/mixins";
@import "active_admin/base";
active_admin.js
//= require select2
//= require active_admin/base
$(".select2able").select2({
placeholder: "Select a Partner"
});
activeadmin表单
f.input :sponsors, as: :select, collection: Sponsor.all, input_html: {class: 'select2able'}
答案 0 :(得分:12)
这是由Active Admin决定将其CSS样式包装在.active_admin选择器中引起的。结果,大多数第三方gem的CSS样式变得不那么具体,并且它们的外观变得破碎。
对于select2以及其CSS文件位于“stylesheets”文件夹内的所有gem,请在active_admin.css.scss
的底部添加以下行:
body.active_admin {
@import "select2";
}
这将提供所有select2的样式body.active_admin
选择器,使它们比Active Admin的样式更具体。
答案 1 :(得分:-4)
问题解决后,使用选择的js代替select2,与select2一样工作,但在主动管理中没有问题。
https://github.com/gregbell/active_admin/issues/2267#issuecomment-19197807