0

我是 Rails 新手,所以请随时提出任何可能有帮助的建议

Gemfile如下

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
gem 'rails', '~> 5.1.4'
gem 'mysql2', '0.4.9'
gem 'puma', '~> 3.7'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'bootstrap-sass'
gem 'devise'
gem 'coffee-rails', '~> 4.2'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> 2.5'
gem 'bcrypt', '~> 3.1.7'
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw]
gem 'tzinfo',       '1.2.1'


group :development, :test do
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
end

group :development do
  gem 'web-console', '>= 3.3.0'
  gem 'listen', '>= 3.0.5', '< 3.2'
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
end

当我sudo rake db:migrate在终端上运行时[出于某种原因,每次运行 rake 命令时我都需要 sudo],我得到

在任何源中找不到 tzinfo-1.2.1 运行bundle install 以安装缺少的 gem。

我尝试删除 Gemfile.lock 并再次运行 bundle install ,但没有帮助。我用谷歌搜索并没有找到任何帮助。

当我跑bundle info tzinfo的时候,它确实给了我一个位置

* tzinfo (1.2.1)
    Summary: Daylight savings aware timezone library
    Homepage: http://tzinfo.github.io
    Path: /home/t430/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/tzinfo-1.2.1

我在这个问题上尝试了所有建议的东西,但没有帮助

Ubuntu 16.04

4

1 回答 1

2

不要使用sudo ...

检查您的 config/database.yml 设置。这就是您访问 MySQL 的方式。确保信息正确。例子 ....

development:
  adapter: mysql2
  encoding: utf8
  database: my_db_name
  username: root
  password: my_password
  host: 127.0.0.1
  port: 3306

来源:https ://stackoverflow.com/a/5872284

于 2017-09-15T16:29:24.493 回答