我的简单rails 4.2.5应用程序中有一个错误我在Windows上破坏了应用程序。我有一个活跃的admin gem,并且在我按照教程here排除了在Rails应用程序中加载active_admin JS和CSS之后,工作正常。我将重复tuturial所说的内容,以防链接发生变化:
创建文件夹app / assets / javascripts / admin和app / assets / stylesheets / admin,并将文件active_admin.js和active_admin.css.scss分别移动到这些文件夹中。
创建文件夹app / assets / javascripts / admin和app / assets / stylesheets / admin,并将文件active_admin.js和active_admin.css.scss分别移动到这些文件夹中。
在您的app / assets / stylesheets / application.css.scss中,您会发现以下顶部附近:
*= require_self
*= require_true .
将其更改为:
*= require_self
*= require_directory .
对application.js执行相同的操作。
重新包含活动管理员中的文件 罪魁祸首是active_admin的asset_registration.rb和application.rb:
def register_default_assets
register_stylesheet 'active_admin.css'
register_javascript 'active_admin.js'
end
要清除这些并用新文件替换它们,请将以下内容添加到config / initializers / active_admin.rb的底部:
config.clear_stylesheets!
config.register_stylesheet 'admin/active_admin.css'
config.clear_javascripts!
config.register_javascript 'admin/active_admin.js'
Heroku部署问题 部署到heroku时,您可能会在日志中看到类似的内容:
Started GET "/admin/login" for 146.115.108.146 at 2011-12-22 16:03:32 +0000
ActionView::Template::Error (admin/active_admin.css isn't precompiled):
6: <title><%= [
7:
8: <% ActiveAdmin.application.stylesheets.each do |path| %>
9: <%= stylesheet_link_tag path %>
10: <% end %>
12: <%= javascript_include_tag path %>
11: <% ActiveAdmin.application.javascripts.each do |path| %>
如本期所述,需要对文件进行预编译以进行生产。将以下内容添加到application.rb(或选择的配置文件):
config.assets.precompile += %w[admin/active_admin.css admin/active_admin.js]
我完成了该教程中的内容但是当我访问http://localhost:3000/admin时,我发现这个中文字符有一个非常奇怪的错误,它会重定向到http://localhost:3000/admin/login并显示此错误 757意外令牌:...(我无法将错误粘贴为文本,因为堆栈溢出垃圾邮件过滤器不允许使用中文字符。)
base.js.coffee中的:
#= require jquery
#= require ./jquery_ui
#= require jquery_ujs
#= require_self
#= require_tree ./lib
#= require_tree ./ext
#= require ./application
window.ActiveAdmin = {}
请问任何想法?
答案 0 :(得分:2)
经过非常努力,这对我来说是解决方案:
config / initializers / active_admin.rb中的: 改变这个:
config.clear_stylesheets!
config.register_stylesheet 'admin/active_admin.css'
config.clear_javascripts!
config.register_javascript 'admin/active_admin.js'
到此:
config.clear_stylesheets!
config.register_stylesheet 'admin/active_admin'
config.clear_javascripts!
config.register_javascript 'admin/active_admin'
在config / initializers / assets.rb中添加:
Rails.application.config.assets.precompile += %w( admin/active_admin.js )
Rails.application.config.assets.precompile += %w( admin/active_admin.css )
config / application.rb已删除:
config.assets.precompile += %w( /admin/active_admin.css.scss )
config.assets.precompile += %w( /admin/active_admin.js.coffee )