我正在尋找一種方法來獲取ActiveRecord模型上所有模型屬性和關聯的數組。我很難找到這個問題的答案,所以,我會發布我的答案,看看是否有更好的解決方案。Rails3 - 如何獲取ActiveRecord模型的所有屬性和關聯?
2
A
回答
2
要獲得所有屬性
m = Model.new
m.attributes
要獲得所有型號協會
Model.reflect_on_all_associations.map{|x| x.class_name}.compact
這些鏈接將提供更多的細節 How do you discover model attributes in Rails
http://www.funonrails.com/2009/11/how-to-get-all-associted-models-of.html
0
我的解決辦法是:
m = Model.find(id)
m.attributes.keys.concat(m.reflections.map{|r| r.first.to_s})
相關問題
- 1. Rails3關聯和嵌套屬性
- 2. 如何使用has_and_belongs_to_many關聯獲取FactoryGirl模型屬性?
- 3. 如何獲取關聯表的屬性?
- 4. 如何獲取與模型關聯模型相關的模型?
- 5. 如何從2個沒有任何關聯的ActiveRecord模型中獲取結果
- 6. 2 ActiveRecord的模型關聯
- 7. 如何獲取所有聯繫人及其所有屬性
- 8. 獲取具有不同屬性的模型ActiveRecord
- 9. 獲取Rails模型的關聯關聯
- 10. Rails有activerecord一次性抓取所有需要的關聯?
- 11. 檢索AR模型的所有關聯屬性?
- 12. ActiveRecord如何找到模型的屬性?
- 13. 獲取模型的關聯
- 14. Rails如何獲得關聯的模型屬性
- 15. ActiveRecord更改相關模型屬性
- 16. 獲取與模型關聯嵌套的屬性
- 17. Rails:從擁有多個關聯中獲取所有關聯的模型
- 18. 關聯Neo4j :: ActiveNode模型與ActiveRecord模型
- 19. RSpec - 無法獲取控制器中的所有關聯屬性
- 20. rails activerecord保存有唯一性驗證的關聯模型
- 21. ActiveRecord獲取所有+相關聯的詳細信息
- 22. 自動保存模型的所有屬性 - ActiveRecord的
- 23. 如何獲取Synsets的所有屬性?
- 24. 是否可以獲取對象的屬性和關聯屬性?
- 25. ActiveRecord的 - 獲取所有相關記錄
- 26. 的ActiveRecord通過HAS_ONE關聯子屬性
- 27. 的ActiveRecord ::關聯打印特定屬性
- 28. 設置ActiveRecord模型屬性
- 29. rails3 has_one關聯模型創建
- 30. 基於關聯模型的數據驗證和ActiveRecord模型?
請注意reflect_on_all_associations.map {| x | x.class_name}獲取關聯的*類名稱*,而不是關聯名稱本身。 – ericpeters0n