我有困难集成select2-rails与ActiveAdmin。我继续执行设置步骤Select2-rails Github页面:https://github.com/argerim/select2-rails和我添加的行:
//= require select2
到app/assets/javascripts/application.js和line:
*= require select2
应用程序/资产/样式表/application.css
所以我假设当我有页面在ActiveAdmin我应该能够添加行:
$('#add_student_select').select2()
active_admin.js.coffee
但是它不起作用。在控制台中,我可以看到以下错误:
Uncaught TypeError: undefined is not a function
(anonymous function)
fire
self.fireWith
jQuery.extend.ready
completed
我也遵循了这个StackOverflow问题,它建议将这一行添加到active_admin.css.scss
:
body.active_admin {
@import "select2";
}
但是我得到以下错误:
File to import not found or unreadable: select2.
积分正确吗?我不认为ActiveAdmin能够得到甚至访问库。
如果你要添加Select2到ActiveAdmin界面,你必须添加javascript和样式到ActiveAdmin资产:
# app/assets/javascripts/active_admin.js.coffee
#
#= require select2
#
# ...
和样式表:
// app/assets/stylesheets/active_admin.css.scss
//
//= require select2
//
// ...
在您提供的示例中,Select2可用于主Rails应用程序,但不能用于ActiveAdmin。ActiveAdmin使用自己的javascript和样式表文件
我遇到了同样的问题,使select2与activeadmin一起工作,但我使用了一个名为activeadmin-select2的gem。我已经根据README安装了它,但我仍然得到错误"要导入的文件未找到或不可读:选择2."。但是,select2-rails似乎没有安装或无法访问。然后我尝试将select2-rails
添加到我的Gemfile和bundle中,最后,一切都很顺利。