aboutsummaryrefslogtreecommitdiffstats
path: root/activeresource/lib/active_resource
diff options
context:
space:
mode:
Diffstat (limited to 'activeresource/lib/active_resource')
-rw-r--r--activeresource/lib/active_resource/base.rb7
-rw-r--r--activeresource/lib/active_resource/validations.rb5
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?