0
導軌 - 2.3.8 數據庫 - 的Postgres(9.2)RuntimeError:ERROR Mrelation 「表名」 不存在
活動記錄查詢是不是能夠在雙引號中產生的表名,即
# this ran fine
Table.find_by_sql('Select * from "Table" Limit 1')
Sql generated - Select * from "Table" Limit 1
但問題進來,
Table.find(:first)
Sql generated - Select * from Table Limit 1 (Clearly noticed that table not in double quotes)
活動記錄顯示錯誤
ActiveRecord::StatementInvalid: RuntimeError: ERROR
C42P01 Mrelation "Table" does not exist
P15 Fparse_relation.c L864
RparserOpenTable: SELECT * FROM Table LIMIT 1
我覺得postgresql適配器不能在雙引號中生成表名。
需要查看您的模型定義和遷移以確定查詢中發生了什麼。我每天使用postgres適配器,並且我沒有任何引用表名的問題。 – plasticide
我面對每個模型的這個問題。當我嘗試在軌道控制檯中寫入這些查詢時。它給了我每個模型的錯誤。 –
'table'不是'postgres'中的保留字嗎?如果是這樣,你是否需要將它封裝在引號中? –