#ruby-on-rails #database #postgresql #web-scraping
#ruby-on-rails #База данных #postgresql #очистка веб-страниц
Вопрос:
Привет, я пытаюсь перейти по этой ссылке, чтобы создать скребок, и я застрял, пытаясь создать БД https://towardsdatascience.com/job-board-scraping-with-rails-872c432ed2c8
Я получаю эту ошибку при вводе rake db:create
текста, который я пытался создать внутри и снаружи папки, и я получаю эту ошибку, я не уверен, почему, большое вам спасибо. Я внимательно следил за ссылкой, поэтому у меня есть все те же файлы, и я уверен, что все было установлено правильно.
rake aborted!
ActiveRecord::DatabaseConfigurations::InvalidConfigurationError:
'{ default => }' is not a valid configuration. Expected '' to be a URL string or a Hash.
Это мой файл database.yml
# SQLite. Versions 3.8.0 and up are supported.
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: amp;default
adapter: postgresql
pool: 5
timeout: 5000
development:
<<: *default
database: scraper_development
test:
<<: *default
database: scraper_test
production:
<<: *default
url: <%= ENV['DATABASE_URL'] %>
# 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.
Заранее всем спасибо!
Обновить
Спасибо за указатель, который у меня был [ database.yml
файл] с отступом, но я подумал, что ошибка подсказала мне удалить вкладки. теперь новая проблема:
could not connect to server: No such file or directory
Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
Couldn't create 'scraper_development' database.
Please check your configuration.
rails aborted!
PG::ConnectionBad: could not connect to server: No such file or directory
Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"
Комментарии:
1. Добро пожаловать в SO! Вы получаете ту же ошибку при запуске:
ENV='test' rails db:create
? Действительно ли установлен драгоценный камень PostgreSQL (с терминала, запуститьgem list pg
)? Есть ли у вас PostgreSQL на вашем компьютере (с терминала, запуститьpostgres --version
)?2. env= ‘test’ выдал мне ту же ошибку
3. также список драгоценных камней pg показал, что у меня версия pg 1.2.3, а Postgres -version показывает, что у меня PostgreSQL 13.0
Ответ №1:
Файл находится в формате YAML. Подпункты должны иметь отступ.
default: amp;default
adapter: postgresql
pool: 5
timeout: 5000
development:
<<: *default
database: scraper_development
Комментарии:
1. Спасибо за указатель, у меня был отступ, но я подумал, что ошибка подсказала мне удалить вкладки. теперь новая проблема: —> не удалось подключиться к серверу: сервер, работающий локально и принимающий соединения в доменном сокете Unix «/tmp/.s.PGSQL.5432», не содержит такого файла или каталога? Не удалось создать базу данных ‘scraper_development’. Пожалуйста, проверьте свою конфигурацию. рельсы прерваны! PG :: ConnectionBad: не удалось подключиться к серверу: нет такого файла или каталога, сервер работает локально и принимает подключения к доменному сокету Unix «/tmp/.s.PGSQL.5432»?
2. @bnhamood126 Ваша база данных Postgres не запущена. Я вижу, что в вашем руководстве не объясняется, как настроить Postgres или что такое Postgres. Вам нужно будет найти и следовать руководству по настройке Postgres.
3. @bnhamood126, я предлагаю этот урок , вы можете пропустить раздел «Требования к установке». Также не забудьте отметить ответ Шверна как правильный.
Ответ №2:
Вы можете добавить » gem’pg’, ‘>= 0.18’, ‘< 2.0’ » перейдите в файл gem и внесите необходимые настройки в файл YAML.
Ответ №3:
Я столкнулся с той же проблемой, и что я сделал, так это исправил отступ, и тогда это сработало.
database.yml
Файл находится в формате YAML.поэтому убедитесь, что подпункты имеют правильный отступ. Пожалуйста, проверьте приведенный ниже пример о том, как вы должны сделать отступ.
This is how your database.yml file should look like
default: amp;default
adapter: postgresql
pool: 5
timeout: 5000
development:
<<: *default
database: scraper_development
test:
<<: *default
database: scraper_test
production:
<<: *default
url: <%= ENV['DATABASE_URL'] %>