class SuperForm::Basic

Public Class Methods

form_name(name) click to toggle source
# File lib/super_form/basic.rb, line 17
def form_name(name)
  # 定義 form name (給 form 用的)
  define_singleton_method :model_name do
    active_model_name_for(name.to_s.camelize)
  end
end
i18n_prefix(i18n_scope) click to toggle source

定義 i18n scope

# File lib/super_form/basic.rb, line 30
def i18n_prefix(i18n_scope)
  define_singleton_method :i18n_scope do
    i18n_scope.to_sym
  end
end
i18n_scope() click to toggle source

default is forms

# File lib/super_form/basic.rb, line 25
def i18n_scope
  :forms
end

Private Class Methods

active_model_name_for(string) click to toggle source
# File lib/super_form/basic.rb, line 38
def active_model_name_for(string)
  ::ActiveModel::Name.new(self, nil, string)
end

Public Instance Methods

sync_params(params) click to toggle source
# File lib/super_form/basic.rb, line 10
def sync_params(params)
  params.each do |attr, value|
    public_send("#{attr}=", value) if respond_to?("#{attr}=")
  end
end