我正在尝试使用Mac上的Postgres on Rails应用程序。我创建了一个名为“shawsome”的新rails应用程序,并在database.yml文件中创建了这个
development:
adapter: postgresql
encoding: unicode
database: shawsome_development
pool: 5
username: shawsome
password:
但服务器无法运行,因为“shawsome”没有任何作用。 Rails似乎从我的应用程序名称中推断出了用户名。
我查看了postgres文档,它讨论了CREATE USER命令
CREATE USER jonathan;
但是,当我尝试创建CREATE USER时,它表示找不到CREATE注释。
谁能告诉我我做错了什么?
此外,一旦它在生产中(在Heroku上)我假设它还需要一个用户名。该用户名是否保持不变?即如果它在我的机器上配置,我是否需要在Heroku上做额外的事情?
答案 0 :(得分:3)
在TheDelChop的答案上稍微扩展一下 安装完成后,您可以在终端中运行以下命令:
createuser -P
(-P是添加密码)
它会询问您的名称,密码,他们是否是超级用户,可以创建新角色,还可以创建新的数据库。您可能不需要任何这些rails权限。
然后创建数据库以使用您创建的以下角色运行:
createdb -O ROLE_NAME_FROM_PREVIOUS_STEP NEW_DATABASE_NAME
中提琴,你应该好好去。
答案 1 :(得分:0)
然后你可以在bash / zsh中使用pg二进制命令createuser
。只要回答他们会问你的问题,不要设置database.yml进行制作,Heroku会照顾它。