2017-08-10 87 views
0

我知道这个问题出现之前,但我采取了以前的答复,我不断收到相同的错误。我不知道为什么我的 'PG' 创业板仍然没有工作:为什么我的'pg'宝石不被识别?

source 'https://rubygems.org' 
    git_source(:github) do |repo_name| 
     repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") 
     "https://github.com/#{repo_name}.git" 
    end 

CODE:

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 
gem 'rails', '~> 5.1.2' 
# Use sqlite3 as the database for Active Record 
gem 'bcrypt', '~> 3.1.11' 
gem 'bootstrap-sass', '3.3.7' 
gem 'sprockets' 
# gem 'sqlite3' 
# Use Puma as the app server 
gem 'puma', '~> 3.7' 
# Use SCSS for stylesheets 
gem 'sass-rails', '~> 5.0' 
# Use Uglifier as compressor for JavaScript assets 
gem 'uglifier', '>= 1.3.0' 
# See https://github.com/rails/execjs#readme for more supported runtimes 
# gem 'therubyracer', platforms: :ruby 

# Use CoffeeScript for .coffee assets and views 
gem 'coffee-rails', '~> 4.2' 
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks 
gem 'turbolinks', '~> 5' 
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 
gem 'jbuilder', '~> 2.5' 
# Use Redis adapter to run Action Cable in production 
# gem 'redis', '~> 3.0' 
# Use ActiveModel has_secure_password 
# gem 'bcrypt', '~> 3.1.7' 

# Use Capistrano for deployment 
# gem 'capistrano-rails', group: :development 

group :development, :test do 
    # Call 'byebug' anywhere in the code to stop execution and get a debugger console 
    gem 'byebug', platforms: [:mri, :mingw, :x64_mingw] 
    # Adds support for Capybara system testing and selenium driver 
    gem 'capybara', '~> 2.13' 
    gem 'selenium-webdriver' 
    gem 'rails-controller-testing' 
    gem 'sqlite3' 
end 

group :development do 
    # Access an IRB console on exception pages or by using <%= console %> anywhere in the code. 
    gem 'web-console', '>= 3.3.0' 
    gem 'listen', '>= 3.0.5', '< 3.2' 
    # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring 
    gem 'spring' 
    gem 'spring-watcher-listen', '~> 2.0.0' 
end 

group :production do 
    gem 'rails_12factor' 
    gem 'pg', '0.20.0' 
end 

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem 
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] 
+1

什么是错误?你到目前为止尝试解决这个问题? –

+0

这是错误:Gem :: LoadError:为数据库适配器指定'postgresql',但未加载该gem。将'gem'pg''添加到您的Gemfile中(并确保其版本处于ActiveRecord所要求的最低限度)。我不知道为什么它说宝石没有加载。我每次运行软件包安装,现在我已经安装了很多次。 – kalex

+0

我即将提交答案,您应该编辑您的问题,使其包含错误。始终提供相关信息,例如您收到的实际错误,以及如果想获得有用答案,您已采取的步骤。有很多事情可能是错误的,所以你应该提供其他的上下文:) –

回答

0

从这=宝石 'PG', '0.20.0' 对此=宝石'pg','〜> 0.20.0'

这应该是一个简单的语法错误。

希望它有帮助。

+0

我改变它,但我得到相同的错误。我很困惑它为什么说它不在我的gemfile中。 – kalex

+0

尝试将其更改为== gem'pg','〜> 0.20' –

+1

没有语法错误 –

1

看起来您正尝试在您的本地环境中使用Postgres,但您的pg gem位于production组中。 Bundler允许你为宝石指定不同的环境组,并且你已经指定它只能在生产环境中使用。如果您运行的是bundle install,它仍然会被安装,但它不会是required并被应用程序使用。 (您可以跳过通过运行bundle install --without production安装在你的制作组的宝石)

如果你确实要使用Postgres的本地,你还没有说,但我推断,你应该将gem 'pg', '0.20.0'production组。如果您不打算使用它,您还应该删除sqlite3 gem,这是新Rails项目的默认数据库适配器。

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 
gem 'rails', '~> 5.1.2' 
# Use sqlite3 as the database for Active Record 
gem 'bcrypt', '~> 3.1.11' 
gem 'bootstrap-sass', '3.3.7' 
gem 'sprockets' 
# gem 'sqlite3' 
# Use Puma as the app server 
gem 'puma', '~> 3.7' 
# Use SCSS for stylesheets 
gem 'sass-rails', '~> 5.0' 
# Use Uglifier as compressor for JavaScript assets 
gem 'uglifier', '>= 1.3.0' 
# See https://github.com/rails/execjs#readme for more supported runtimes 
# gem 'therubyracer', platforms: :ruby 

# Use CoffeeScript for .coffee assets and views 
gem 'coffee-rails', '~> 4.2' 
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks 
gem 'turbolinks', '~> 5' 
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 
gem 'jbuilder', '~> 2.5' 
# Use Redis adapter to run Action Cable in production 
# gem 'redis', '~> 3.0' 
# Use ActiveModel has_secure_password 
# gem 'bcrypt', '~> 3.1.7' 

# PostgreSQL database 
gem 'pg', '0.20.0' 

# Use Capistrano for deployment 
# gem 'capistrano-rails', group: :development 

group :development, :test do 
    # Call 'byebug' anywhere in the code to stop execution and get a debugger console 
    gem 'byebug', platforms: [:mri, :mingw, :x64_mingw] 
    # Adds support for Capybara system testing and selenium driver 
    gem 'capybara', '~> 2.13' 
    gem 'selenium-webdriver' 
    gem 'rails-controller-testing' 
end 

group :development do 
    # Access an IRB console on exception pages or by using <%= console %> anywhere in the code. 
    gem 'web-console', '>= 3.3.0' 
    gem 'listen', '>= 3.0.5', '< 3.2' 
    # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring 
    gem 'spring' 
    gem 'spring-watcher-listen', '~> 2.0.0' 
end 

group :production do 
    gem 'rails_12factor' 
end 

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem 
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]