module RailsAdmin::Config::HasFields
Provides accessors and autoregistering of model's fields.
Protected Instance Methods
_fields(readonly = false)
click to toggle source
Raw fields. Recursively returns parent section's raw fields Duping it if accessed for modification.
# File lib/hancock/rails_admin_ext/patches/has_fields.rb, line 12 def _fields(readonly = false) return @_fields if @_fields return @_ro_fields if readonly && @_ro_fields if self.class == RailsAdmin::Config::Sections::Base @_ro_fields = @_fields = RailsAdmin::Config::Fields.factory(self) else # parent is RailsAdmin::Config::Model, recursion is on Section's classes @_ro_fields ||= parent.send(self.class.superclass.to_s.underscore.split('/').last)._fields(true) @_ro_fields.freeze if Rails.env.production? or Rails.env.staging? end readonly ? @_ro_fields : (@_fields ||= @_ro_fields.collect(&:clone)) end