diff --git a/app/models/rss_feed.rb b/app/models/rss_feed.rb index 40172f4..2d1168d 100644 --- a/app/models/rss_feed.rb +++ b/app/models/rss_feed.rb @@ -19,6 +19,8 @@ class RssFeed < Article settings[:limit] || 10 end def limit=(value) + #UPGRADE Leandro: I add this line to save the serialize attribute + self.body_will_change! settings[:limit] = value end diff --git a/lib/acts_as_having_settings.rb b/lib/acts_as_having_settings.rb index 4b421f3..46e302a 100644 --- a/lib/acts_as_having_settings.rb +++ b/lib/acts_as_having_settings.rb @@ -31,6 +31,10 @@ module ActsAsHavingSettings val.nil? ? (#{default}.is_a?(String) ? gettext(#{default}) : #{default}) : val end def #{setting}=(value) + + #UPGRADE Leandro: I add this line to save the serialize attribute + send(self.class.settings_field.to_s + '_will_change!') + send(self.class.settings_field)[:#{setting}] = self.class.acts_as_having_settings_type_cast(value, #{data_type.inspect}) end CODE diff --git a/test/unit/blog_test.rb b/test/unit/blog_test.rb index 64cda89..07ae372 100644 --- a/test/unit/blog_test.rb +++ b/test/unit/blog_test.rb @@ -113,7 +113,11 @@ class BlogTest < ActiveSupport::TestCase should 'update external feed' do p = create_user('testuser').person blog = Blog.new(:profile => p, :name => 'Blog test') - blog.create_external_feed(:address => 'feed address') + blog.save + e = ExternalFeed.new(:address => 'feed address') + e.blog = blog + e.save + blog.reload blog.external_feed_builder = { :address => 'address edited' } blog.save! assert_equal 'address edited', blog.external_feed.address -- libgit2 0.21.2