0
所以,這是我第三次在這個項目的工作過程中收到這個錯誤我幾個月前發佈了一個關於這個問題的問題 ActiveRecord::StatementInvalid (PG::Error: ERROR: column does not exist經常性的Heroku PG活動記錄錯誤,「列不存在」
Heroku的日誌
2012-11-19T05:04:20+00:00 app[web.1]: Processing by MainController#home as HTML
2012-11-19T05:04:20+00:00 app[web.1]: Completed 500 Internal Server Error in 2ms
2012-11-19T05:04:20+00:00 app[web.1]:
2012-11-19T05:04:20+00:00 app[web.1]: LINE 1: SELECT "apartments".* FROM "apartments" WHERE (Bed = 0)
2012-11-19T05:04:20+00:00 app[web.1]: ^
2012-11-19T05:04:20+00:00 app[web.1]: app/controllers/main_controller.rb:6:in `home'
2012-11-19T05:04:20+00:00 app[web.1]: : SELECT "apartments".* FROM "apartments" WHERE (Bed = 0)):
2012-11-19T05:04:20+00:00 app[web.1]:
2012-11-19T05:04:20+00:00 app[web.1]: ActiveRecord::StatementInvalid (PG::Error: ERROR: column "bed" does not exist
控制器代碼
def home
@apartments = Apartment.all
@studio = Apartment.where(:Bed => 0).all
@oneBdr = Apartment.where(:Bed => 1).all
@twoBdr = Apartment.where(:Bed => 2).all
@threeBdr = Apartment.where(:Bed => 3).all
@fourPlusBdr = Apartment.where("Bed >= 4").all
end
基本上,我能夠通過SWIT到第一兩次修復它從找到到第二次從哪裏找到。我永遠無法理解它爲什麼起作用,但它確實讓我忘記了它,直到我再次開始發現錯誤。現在是否我在哪裏/查找搜索之間進行交換仍然會出現同樣的錯誤。任何幫助都會受到高度的歡迎,我對這個問題的原因可能會有點失落。
在此先感謝!
假設你用'遷移Heroku的運行耙分貝:migrate',嘗試了原始的SQL查詢'Apartment.find_by_sql(「SELECT公寓* FROM公寓WHERE(牀= 0 )「)'只是爲了看看它是否有效。另外,不是說這應該會導致錯誤,但爲什麼不遵循約定並使用小寫字母名稱? – cdesrosiers
@cdesrosiers不幸的是,原始的SQL沒有做任何事情,仍然返回相同的錯誤。此外,這一列全部是小寫,但我只是想測試一下,看看大寫可以解決問題,正如你所說的不是錯誤的原因。 – sonobenissimo