2010-08-14 102 views
0

在Windows 7安裝後,我遇到了一些麻煩ruby 1.8.6,rails 2.3.8,一些基本的gem(ruby-postgres)以及Jetbrains的IDE Rubymine。Ruby on Rails + Postgres:配置問題

所以,用的RubyMine(在database.yml中PostgreSQL的默認配置)創建一個簡單的項目後,我在本地主機運行它:3000但似乎沒有認識到不一樣:

當我第一次點擊主Ruby on Rails的頁面在「關於您的應用程序的環境」 它返回一個錯誤:「很抱歉,但出錯了」「,甚至當我創建一個帶有視圖的簡單控制器並打開正確的URL它告訴同樣的問題。

我不知道如果問題是關於數據庫或類似的東西,但我也想知道如何在database.yml中配置它。

默認:

adapter: postgresql 
    encoding: unicode 
    database: (name of the project)_(type: test, production or development) 
    pool: 5 
    username: (name of the project) 
    password: (no password) 

我做了什麼:

adapter: postgresql 
    encoding: utf-8 
    database: (name of database)_(type: test, production or development) 
    pool: 5 
    username: ruby 
    password: (no password) 
    host: localhost 
    port: 3000 

是不是?

+0

你說什麼日誌文件說? – theIV 2010-08-14 22:36:15

回答

0

假設你的項目被稱爲富,你已經創建了一個Postgres的正確的數據庫和Postgres正在偵聽的默認端口本地主機上

development: 
    adapter: postgresql 
    encoding: utf-8 
    database: foo_development 
    pool: 5 
    user: ruby 

如上所述,端口3000是rails監聽的地方,所以會導致問題。你還需要確保pga_hba.conf允許連接到數據庫。

+0

感謝您的信息,我做了所有,但唯一的事情我無法在Rubymine中找到的是我在哪裏將端口3000更改爲5432,因爲每次運行該項目它都會變爲3000.(我已更改database.yml端口) – mateusmaso 2010-08-15 00:02:38

+0

您不需要將端口更改爲5432,5432是postgresql服務器啓動時將偵聽的默認端口。端口3000是ruby on rails開發服務器上運行的默認端口。每個進程都需要自己的端口號,否則它將無法綁定並且不會運行。除非你有一個奇怪的配置,否則不需要在rails開發端口號上更改postgresql端口或ruby。 – Doon 2010-08-15 00:22:20

2

我不太瞭解在Windows上運行Rails,但是看上面的database.yml文件,你不應該說port: 3000。這是Rails應用程序運行的默認端口。你需要把PostgreSQL所使用的端口,通常是5432