Nếu bạn nhìn vào activeadmin base manifest file bạn sẽ thấy nơi tải jquery thêm được gọi. Cuộc gọi cuối cùng trong tệp kê khai cơ sở là tệp kê khai ứng dụng activeadmin. Do đó, có một cách dễ dàng để bỏ qua tải jquery bổ sung không mong muốn.
Thay đổi dòng này trong /app/assets/javascripts/active_admin.js bạn ứng dụng của:
//= require active_admin/base
Để
//= require active_admin/application
Bằng cách đó mã javascript hoạt động của admin sẽ được nạp mà không cần tải lại jquery.
Trong không gian quản trị /, quản trị viên đang hoạt động tải active_admin.js mà không tải ứng dụng.js, vì vậy bạn cũng cần tải app.js tại đó. Để làm việc, bạn cần phải tạo ứng dụng quản trị tải ứng dụng active.js trước active_admin.js. Thêm phần này vào config/initializers/active_admin.rb:
current_javascripts = config.javascripts.clone
config.clear_javascripts!
config.register_javascript 'application.js'
current_javascripts.reverse.each{|j| config.register_javascript j}
Tuy nhiên, lưu ý rằng đối này để làm việc liên tục, bạn có thể cần tất cả các tờ khai trong application.js của ứng dụng của bạn manifest:
//= require jquery
//= require jquery-ui
//= require jquery_ujs
Cũng vì application.js đang được tải trong quản trị viên đang hoạt động, bạn cần tự quản lý mọi xung đột không gian tên.
Đây là câu trả lời đúng, tôi tin tưởng. –