gpt4 book ai didi

ruby-on-rails - ActiveAdmin 未初始化的常量

转载 作者:行者123 更新时间:2023-12-03 15:05:33 25 4
gpt4 key购买 nike

将应用程序部署到 VPS 后,出现以下错误。 ActiveAdmin 在我的本地开发环境中运行良好,但是一旦我使用 capistrano 进行部署,看起来 gem 没有被安装?

E, [2013-03-14T01:27:04.901577 #24972] ERROR -- : uninitialized constant ActiveAdmin (NameError)
/home/deployer/apps/papaya/releases/20130314052558/config/initializers/active_admin.rb:1:in `<top (required)>'

我的 gem 文件
source 'https://rubygems.org'

gem 'rails', '3.2.11'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'pg'
gem 'bootstrap-sass'
gem 'font-awesome-sass-rails'
# gem 'acts_as_tree', :git => 'git://github.com/amerine/acts_as_tree.git'
gem 'closure_tree'
gem 'kaminari'
gem 'friendly_id'
gem 'slim'
gem 'gmaps4rails'
gem 'devise'
gem 'omniauth'
gem 'oauth2'
gem 'omniauth-facebook'
gem 'omniauth-twitter'
gem 'simple_form'
gem 'pg_search'
gem 'stamp'
gem 'acts-as-taggable-on', '~> 2.3.1'
gem 'rmagick'
gem 'carrierwave'
gem 'select2-rails'
# gem 'roo'
gem 'activeadmin'
gem "meta_search", '>= 1.1.0.pre'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'

# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :ruby
gem 'uglifier', '>= 1.0.3'
gem 'compass-rails'
gem 'turbo-sprockets-rails3'
end

我可以毫无问题地运行控制台并且需要 activeadmin
deployer@pareto:~/apps/papaya/current$ RAILS_ENV=production bundle exec irb
irb(main):001:0> require 'activeadmin'
=> true
irb(main):002:0>

最佳答案

发生了什么?

当需要定义常量的 gem 时,例如 ActiveAdminActiveAdmin::Comment ,如果在定义该常量期间由于某种原因出现问题,Bundler 会将该常量保留为未定义状态,并且不会重新引发异常。

可能的原因
ActiveAdmin取决于 ExecJSExecJS需要一个有效的 JavaScript 运行时。 ExecJS在定义 ActiveAdmin 时会抛出这样的错误持续的。

ExecJS::RuntimeUnavailable: Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes.

在这种情况下,只需安装 Node.js。 sudo apt-get install nodejs
如何调试这样的问题
  • 尝试运行 Rails 控制台。 bundle exec rails console
  • 如果失败,请尝试在 irb 中手动引入有问题的 gem。并解决其依赖项。
  • 如果应该定义但没有定义,则需要 gem 或部分。当需要手动 Rubygems 抛出一个描述问题的异常时。
  • 处理异常并修复它们,直到问题得到解决。
  • 关于ruby-on-rails - ActiveAdmin 未初始化的常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15401998/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com