Commit 7ad3a81e8b855bf989224c2ca09d96f127d0805f

Authored by Daniel
1 parent 6965920b

Memoize attributes in KalibroConfig. and ReadingGroup, fixing destroy

app/models/kalibro_configuration.rb
1 1 class KalibroConfiguration < KalibroClient::Entities::Configurations::KalibroConfiguration
2 2 include KalibroRecord
  3 + attr_writer :attributes
3 4  
4 5 def self.public_or_owned_by_user(user=nil)
5 6 kalibro_configuration_attributes = KalibroConfigurationAttributes.where(public: true)
... ... @@ -19,12 +20,11 @@ class KalibroConfiguration &lt; KalibroClient::Entities::Configurations::KalibroCon
19 20 end
20 21  
21 22 def attributes
22   - KalibroConfigurationAttributes.find_by(kalibro_configuration_id: self.id)
  23 + @attributes ||= KalibroConfigurationAttributes.find_by(kalibro_configuration_id: self.id)
23 24 end
24 25  
25 26 def destroy
26   - attrs = attributes
27   - attrs.destroy unless attrs.nil?
  27 + attributes.destroy unless attributes.nil?
28 28 super
29 29 end
30 30 end
... ...
app/models/reading_group.rb
1 1 class ReadingGroup < KalibroClient::Entities::Configurations::ReadingGroup
2 2 include KalibroRecord
  3 + attr_writer :attributes
3 4  
4 5 def self.public_or_owned_by_user(user=nil)
5 6 reading_group_attributes = ReadingGroupAttributes.where(public: true)
... ... @@ -19,6 +20,11 @@ class ReadingGroup &lt; KalibroClient::Entities::Configurations::ReadingGroup
19 20 end
20 21  
21 22 def attributes
22   - ReadingGroupAttributes.find_by(reading_group_id: self.id)
  23 + @attributes ||= ReadingGroupAttributes.find_by(reading_group_id: self.id)
  24 + end
  25 +
  26 + def destroy
  27 + attributes.destroy unless attributes.nil?
  28 + super
23 29 end
24 30 end
... ...