i’ve got the following code snippet in my model to generate extra
helper functions.
def transform_to_boolean
Property.columns.select {|c| c.sql_type == "varchar(1)"}.each do
|col|
define_method “#{col.name.to_s}”.to_sym do
v = self.attributes[col.name.to_s]
v = (v ? v.upcase : “F”)
if (v == “W” || v == “T”)
true
else
false
end
end
end
end
this functionality takes over 1,2 sec for one instance of the model.
It has to iterate over 260 columns.
Do you have an idea how to speed up this piece of functionality?
It has to iterate over 260 columns.
To unsubscribe from this group, send email to [email protected].
For more options, visit this group athttp://groups.google.com/group/rubyonrails-talk?hl=en.
this is the call of evil
v = self.attributes[col.name.to_s]
i change it to
v = self.read_attribute(col.name.to_sym)
its much faster.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.