我想從表中摘取一列。該命令似乎失敗,因爲我的列名稱是駝峯式(practiceType
)。這裏是我的錯誤,模型和模式:如何摘取駱駝案例列
> Task.pluck 'practiceType'
(0.5ms) SELECT practiceType FROM "tasks"
PG::Error: ERROR: column "practicetype" does not exist
LINE 1: SELECT practiceType FROM "tasks"
^
: SELECT practiceType FROM "tasks"
ActiveRecord::StatementInvalid: PG::Error: ERROR: column "practicetype" does not exist
task.rb
class Task < ActiveRecord::Base
attr_accessible :name, :practiceType
[...]
schema.db
create_table "tasks", :force => true do |t|
t.string "name"
t.string "practiceType"
[...]
正確的解決方案可能是列名轉換變成蛇的情況下,但我更喜歡避免這種情況,因爲害怕打破我的應用程序。是否有一個快速和骯髒的解決方案,將讓我的查詢運行?
您可能能夠使用別名,即'別名 「practiceType」, 「practicetype」'(或逆轉,不知道),我讀到這裏:http://stackoverflow.com/questions/5822257/ruby-on-rails-is-it-it-it-it-use-came-cased-database-field-and-table-names –
[This post](http://lexsheehan.blogspot.com/2013/04/ how-to-reference-camelcase-column-names.html)建議雙引號列名稱。 –