diff options
Diffstat (limited to 'activeresource/lib/active_resource')
-rw-r--r-- | activeresource/lib/active_resource/base.rb | 7 | ||||
-rw-r--r-- | activeresource/lib/active_resource/validations.rb | 5 |
2 files changed, 7 insertions, 5 deletions
diff --git a/activeresource/lib/active_resource/base.rb b/activeresource/lib/active_resource/base.rb index cb520eef5c..656698fb25 100644 --- a/activeresource/lib/active_resource/base.rb +++ b/activeresource/lib/active_resource/base.rb @@ -169,12 +169,13 @@ module ActiveResource def update connection.put(self.class.element_path(id, prefix_options), to_xml) + true end def create - returning connection.post(self.class.collection_path(prefix_options), to_xml) do |resp| - self.id = id_from_response(resp) - end + resp = connection.post(self.class.collection_path(prefix_options), to_xml) + self.id = id_from_response(resp) + true end # takes a response from a typical create post and pulls the ID out diff --git a/activeresource/lib/active_resource/validations.rb b/activeresource/lib/active_resource/validations.rb index f1995a6070..3011ba3295 100644 --- a/activeresource/lib/active_resource/validations.rb +++ b/activeresource/lib/active_resource/validations.rb @@ -109,8 +109,9 @@ module ActiveResource def save_with_validation save_without_validation - rescue ResourceInvalid - errors.from_xml($!.response.body) + rescue ResourceInvalid => error + errors.from_xml(error.response.body) + return false end def valid? |