2015-07-02 3 views
1

Please note that YAML must be consistently indented using spaces. Tabs are not allowed.YAML ошибка синтаксиса при разборе конфигурации/database.yml

Error:(): found character that cannot start any token while scanning for the next token at line 17 column 13

Ruby version is : ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] Rails version is : Rails 4.2.3

Я использую Ubuntu 14.04 LTS 64-бит

Полный database.yml файл:

# MySQL. Versions 5.0+ are recommended. 
# 
# Install the MYSQL driver 
# gem install mysql2 
# 
# Ensure the MySQL gem is defined in your Gemfile 
# gem 'mysql2' 
# 
# And be sure to use new-style password hashing: 
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html 
# 
default: &default 
    adapter: mysql2 
    encoding: utf8 
    pool: 5 
    username: root 
    password: 
    socket: /var/run/mysqld/mysqld.sock 

development: 
<<: *default 
database: readit_development 

# Warning: The database defined as "test" will be erased and 
# re-generated from your development database when you run "rake". 
# Do not set this db to the same as development or production. 
test: 
    <<: *default 
    database: readit_test 

# As with config/secrets.yml, you never want to store sensitive information, 
# like your database password, in your source code. If your source code is 
# ever seen by anyone, they now have access to your database. 
# 
# Instead, provide the password as a unix environment variable when you boot 
# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database 
# for a full rundown on how to provide these environment variables in a 
# production deployment. 
# 
# On Heroku and other platform providers, you may have a full connection URL 
# available as an environment variable. For example: 
# 
# DATABASE_URL="mysql2://myuser:[email protected]/somedatabase" 
# 
# You can use this database configuration with: 
# 
# production: 
#  url: <%= ENV['DATABASE_URL'] %> 
# 
production: 
    <<: *default 
    database: readit_production 
    username: readit 
    password: <%= ENV['READIT_DATABASE_PASSWORD'] %> 
+1

Ошибка в строке 17, я должен это пароль линии. Возможно, ошибка опечатки там, как пробельный символ, попробуйте удалить пробелы после «password:». –

+0

Что-то скрытое в вашем файле. Я просто копировал/вставлял выше, и я могу импортировать его просто отлично на OSX с ruby ​​2.2.2p95. –

ответ

0

Это выглядит либо ошибка в парсер, который вы используете, или, как предположил Филипп, скрытый персонаж.

Использование

yaml round-trip database.yml 

вы не получите сообщение об ошибке синтаксического анализатора, и один и тот же результат, что и входной файл, для пустых строк (опускаем) и значение отображения в development которое непоследовательно с отступом в 1 пространстве, за исключением (но это не ошибка YAML, так как она требует только согласования отступов внутри одного и того же отображения/последовательности).

0

В поле пароля укажите одно место.

например:

adapter: mysql2 
encoding: utf8 
pool: 5 
username: root 
password:_***** 
Смежные вопросы