2015-04-25 47 views
5

这很奇怪。在我的Rails 4 database.yml中我有以下几点:如何在导轨控制台中查找数据库名称

development: 
    adapter: postgresql 
    encoding: unicode 
    database: inspector_development 
    password: 
    pool: 5 

我复制从Heroku的生产数据库并将其导入采用这种形式到我的本地PostgreSQL的

curl -o latest.dump `heroku pgbackups:url --account personal` 
pg_restore --verbose --clean --no-acl --no-owner -h localhost -U sam -d inspector_development latest.dump 

副本的结果显示,88希望在OSX的inspector_development数据库中的PGadmin用户。但是,即使重新启动rails应用程序,用户表仍然只显示一个用户,而不是我在PGadmin中看到的88。

我已经搜索了如何确定哪些Rails认为是数据库名称的属性,以确定它在哪里找到这些不存在的记录?

仔细查看PGadmin中的用户表,我看到零列。也许PGadmin错了?我无法确定在DB Rails正在寻找这样我可以解决此,THX,SAM

+2

从您的应用程序根目录试试'rails db'查看它连接的数据库。如果这是您的开发数据库,​​它应该用'inspector_development =#'打开postgres控制台。 –

+0

我通常会将其恢复到不同的数据库名称并指向database.yml。到目前为止,这种方法还没有问题。 – fylooi

回答

9

这工作对Rails 3个Rails 4

ActiveRecord::Base.connection.current_database 

但这仅适用于有司机实施该方法。例如,它不适用于SQLite,但可以使用mysql和postgres。