Commit 7ad3a81e8b855bf989224c2ca09d96f127d0805f
1 parent
6965920b
Exists in
colab
and in
4 other branches
Memoize attributes in KalibroConfig. and ReadingGroup, fixing destroy
Showing
2 changed files
with
10 additions
and
4 deletions
Show diff stats
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 < 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 < 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 | ... | ... |