我的项目中有ledermann-rails-settings,用于存储设置。我想获取密钥的所有设置值。我的模型就像
class Prescription < ActiveRecord:Base
has_settings do |s|
s.key :print_options ,:defaults=> {:medication=>true,:medical_history=>false}
end
end
我已经浏览了rubydoc上的documention以及git,但找不到一次获取所有值的方法。有all
方法可用于设置对象,但在我的情况下它不起作用。如果我Prescription.last.settings(:print_options).all
它会返回nil
,这是因为它认为all
是一个键并尝试为其获取值。
我已经看到了对象结构并看到了存储在设置对象的value
属性中的值,可以像
Prescription.last.settings(:print_options).value
但问题是它没有返回默认值,而我需要获取所有值(包括默认值)。如果有人为此目的知道任何方法或使用all
方法纠正我,请告诉我。