Ответ 1
Вы обеспечили владение тестовой БД? попробуйте запустить команду \l
на клиенте консоли Postgres и проверить права собственности. вы также можете попробовать следующий запрос:
ALTER DATABASE sample_app_test OWNER TO demo_app;
Я работаю над Майклом Хартлом отлично tutorial, но при попытке подготовить тестовую базу данных с помощью команды: bundle exec rake db: test: подготовить Я получаю это сообщение об ошибке:
ОШИБКА: должен быть владельцем базы данных sample_app_test...
который я никогда не получал при использовании базы данных разработки, потому что я создал следующую роль базы данных для моего приложения Rails:
CREATE ROLE demo_app С СОЗДАННЫМ ВХОДОМ
(используется Postgresql)
Кто-нибудь понимает, почему это не работает в тестовой среде? ТИА...
Вы обеспечили владение тестовой БД? попробуйте запустить команду \l
на клиенте консоли Postgres и проверить права собственности. вы также можете попробовать следующий запрос:
ALTER DATABASE sample_app_test OWNER TO demo_app;
Первое сообщение, записывающее это для потомков. У меня была такая же проблема, но я смог ее исправить. Вам просто нужно убедиться, что вы были/вошли в систему как суперпользователь при создании своих баз данных (или той, которая бросает ошибку).
Я записывался в psql с помощью этого кода:
sudo sudo -u postgres psql
И создал мои базы данных. Это плохо. Вы хотите войти в систему с этими учетными данными суперпользователя:
sudo su - postgres
И после того, как вы войдете в postgres:
psql
Затем создайте свои базы данных. Вы можете убить свои старые базы данных командой
DROP DATABASE "database_to_drop";
Восстановите их, и вы должны быть хорошими!