gpt4 book ai didi

ruby-on-rails - Rails rake Assets :precompile for production

转载 作者:行者123 更新时间:2023-12-03 10:34:32 26 4
gpt4 key购买 nike

我正在尝试为我的应用程序预编译 Assets 以部署到 Heroku,但必须遵循错误。

运行时:

RAILS_ENV=production bundle exec rake assets:precompile

错误:
/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets
rake aborted!
Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.)

因为我在开发 SQLite 和生产 Postgresql 中使用以下 Gemfile
gem "rails", "~> 3.1.0"

group :production do
gem 'pg'
end

group :development, :test do
gem 'sqlite3'
end

gem 'sass-rails', "~> 3.1.0"

group :assets do
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
gem 'compass', '~> 0.12.alpha.0'
gem 'html5-boilerplate'
end

我尝试了很多,但无法正常工作。

我不知道这是否重要,但我的 database.yml 看起来像:
production:
adapter: postgresql
host: localhost
database: db
encoding: unicode
username: user
password: ''

最佳答案

老问题,但接受的答案并没有真正回答这个问题——我只是在搜索中找到了这个,所以我想它是相关的。

报错的原因是gem 'pg'属于生产 gem 组。
当您运行时 rake assets:precompile访问生产环境。所以它正在尝试加载生产环境但您没有安装所有依赖项 .

运行 RAILS_ENV=production bundle exec rails server可能会给你一个类似的错误。

我可以想到两种不同的解决方案

1) 看看你是否有 .bundle/config应用程序根目录中的文件。如果这样做,请检查它是否显示 WITHOUT :production或类似。删除该行或整个 .bundle目录并运行 bundle再次。

2) 在 Gemfile

gem :development, :production do
gem 'pg'
end

同时删除 :production团体
运行 bundle再次

对不起,提出旧的东西......

关于ruby-on-rails - Rails rake Assets :precompile for production,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7787476/

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