回答
Rails的2.3.x版本:
Model.columns.map(&:name).include?('pin')
的Rails 3.x中:
Model.column_exists?(:pin)
[如何檢查如果模型具有一定的列/屬性?(HTTP的
'column_exists?'不是從'Model'中可用的方法。 –
Model.connection.column_exists?(table_name,column_name)[docs](http://apidock.com/rails/ActiveRecord/ConnectionAdapters/SchemaStatements/column_exists%3F) – Alex
如果你想使用column_exists你必須這樣做。 ActiveRecord :: Base.connection.column_exists?(:table_name,:pin) – Brandt
你可以做到這一點從表中的符號得到所有的列名的數組:
YourModel.arel_table.columns.map(&:name)
檢查pin
列存在:
YourModel.arel_table.columns.map(&:name).include?(:pin)
您可以使用column_exists?來檢查Rails 3.0及更高版本的列是否存在。
- 1. 查找表中存在的命名列
- 2. DB2:如何查找列表是否存在於表格或表格列表中?
- 3. Python - 如何查找列表(或子列表)中存在的項目?
- 4. 如何在C#中的數據表中查找列的存在?
- 5. 如何檢查Ruby中是否存在文件夾列表?
- 6. 在列表的兩個列表中查找已更改或新行
- 7. 在表或列中查找文本
- 8. 在空表中查找SQLite列名
- 9. T-SQL:如何查找列表中是否存在列
- 10. 如何檢查文件是否已經存在於列表中?
- 11. 如何查找表中存在的值?
- 12. 檢查,看是否名已在列表
- 13. 查找HTML表中是否存在列
- 14. 查找列表項目是否存在於Firebase或不在Android中?
- 15. 如何檢查列表索引是否存在或不
- 16. SQL如何從列表中查找不在表中的值
- 17. 如何在拋出SQLIntegrityConstraintViolationException異常時查找列名和表名
- 18. 如何在Ruby中實現查找類?
- 19. 如何在Elasticsearch中過濾或查詢索引名稱列表?
- 20. 在HTML中查找表名
- 21. 在PSQL中查找表名
- 22. 如何檢查數據庫表是否存在或不存在?
- 23. 或檢查列中存在的不
- 24. 檢查,如果用戶名已存在
- 25. 如何查找散列表a中是否存在hashmap b
- 26. 如何在存儲過程中查找數據表列引用
- 27. 如何查找列的表名
- 28. 如何檢查數據庫中是否存在表或列?
- 29. 如何查找並替換列表中的文件名列表
- 30. 檢查列是否已經存在,如果不是,則在sqlite中更改表
可能重複:// stackoverflow.com/questions/1710004/how-to-check-if-a-model-has-a-certain-column-attribute) –