2010-11-10 62 views
1

我想知道是否有任何數組方法檢查模型中特定列的存在。我將來自兩個表的查詢結果組合成一個數組。我需要檢查這些表的列名列表註釋該數組。檢查導軌數組中是否存在特定列

+0

請稍微詳細一點。你的問題還不夠清楚。 – Shreyas 2010-11-10 10:46:18

+0

重複[如何檢查模型是否具有某個列/屬性?](http://stackoverflow.com/questions/1710004/how-to-check-if-a-model-has-a-certain-column - 屬性)有更好的問題和答案。 – 2012-07-19 16:49:34

回答

0

這是如何檢查模型實例是否屬於特定類,例如obj.is_a?(Person)

要查看某個模型具有哪些列,請在課程級別執行:obj.class.columns.collect { |c| c.name }

+0

甚至更​​短:obj.class.columns.map(&:name) – jordinl 2010-11-10 11:59:38

3
Model.columns.map(&:name).include?("id") 
# => true 
Model.columns.map(&:name).include?("not_available_column") 
# => false 
1

另外,這樣做也許更清潔的方式是:Foo.column_names.include( 「巴」)