Ruby on rails rails如何对模型上可访问的属性使用反射/内省?

Ruby on rails rails如何对模型上可访问的属性使用反射/内省?,ruby-on-rails,ruby,ruby-on-rails-3,reflection,Ruby On Rails,Ruby,Ruby On Rails 3,Reflection,我使用的是Rails 3,所以我使用的是可访问白名单属性的attr_。我希望能够查看为模型的attr\u accessible列出的属性,并更改它们,甚至从模型中删除attr\u accessible 我希望能够做到以下几点: MyModel.class_eval{undef :attr_accessible} 目前给出了错误 undefined method `attr_accessible' for class `MyModel' (NameError) 您将使用的方法在rails 4中

我使用的是Rails 3,所以我使用的是可访问白名单属性的attr_。我希望能够查看为模型的attr\u accessible列出的属性,并更改它们,甚至从模型中删除attr\u accessible

我希望能够做到以下几点:

MyModel.class_eval{undef :attr_accessible}
目前给出了错误

undefined method `attr_accessible' for class `MyModel' (NameError)

您将使用的方法在rails 4中不再有效。但您可以尝试使用可访问的属性


我不明白你的问题。你想干什么?
array = []
whitelisted_attributes = MyModel.last.accessible_attributes
whitelisted_attributes.each do |attr|
  array << attr if whitelisted_attributes.include?(attr)
end
array