class RailsZen::WriteToModel
Attributes
attr_type[RW]
file_name[RW]
model_name[RW]
name[RW]
scope_attr[RW]
type_based_validators[RW]
validator[RW]
Public Instance Methods
adding_to_file!(line)
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 27 def adding_to_file!(line) inject_into_class(file_name, model_name.capitalize, line) end
write!()
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 14 def write! if @validator output = send(@validator) if type_num? type_output = send(@type_based_validators) adding_to_file!(" #{output + type_output}\n" ) else adding_to_file!(" #{output}\n") end end end
Private Instance Methods
resolve_scope()
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 49 def resolve_scope if scope_attr.length == 2 ":#{scope_attr[1]}" else scope_attr[1..-1].to_s end end
type_num?()
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 36 def type_num? @attr_type == "integer" || @attr_type == "decimal" end
validates_presence_of()
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 39 def validates_presence_of "validates :#{name}, presence: true" end
validates_uniqueness_of()
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 42 def validates_uniqueness_of "validates :#{name}, presence: true, uniqueness: true" end
validates_uniqueness_scoped_to()
click to toggle source
# File lib/rails_zen/write_to_files/write_to_model.rb, line 45 def validates_uniqueness_scoped_to "validates_uniqueness_of :#{scope_attr[0]}, scope: #{resolve_scope}" end