From 087398681bb2be32055e2e4358e95d231a6c1dff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elomar=20Fran=C3=A7a?= Date: Mon, 24 May 2010 23:55:14 -0300 Subject: [PATCH] Adding to_key to ActiveResource objects using ActiveModel::Conversion --- activeresource/lib/active_resource/base.rb | 6 +----- activeresource/test/cases/base_test.rb | 7 +++++++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/activeresource/lib/active_resource/base.rb b/activeresource/lib/active_resource/base.rb index 6397fbc..b89097a 100644 --- a/activeresource/lib/active_resource/base.rb +++ b/activeresource/lib/active_resource/base.rb @@ -1044,11 +1044,6 @@ module ActiveResource attributes[self.class.primary_key] = id end - # Allows Active Resource objects to be used as parameters in Action Pack URL generation. - def to_param - id && id.to_s - end - # Test for equality. Resource are equal if and only if +other+ is the same object or # is an instance of the same class, is not new?, and has the same +id+. # @@ -1411,6 +1406,7 @@ module ActiveResource class Base extend ActiveModel::Naming include CustomMethods, Observing, Validations + include ActiveModel::Conversion include ActiveModel::Serializers::JSON include ActiveModel::Serializers::Xml end diff --git a/activeresource/test/cases/base_test.rb b/activeresource/test/cases/base_test.rb index 1508480..35c3f4c 100644 --- a/activeresource/test/cases/base_test.rb +++ b/activeresource/test/cases/base_test.rb @@ -1081,6 +1081,13 @@ class BaseTest < Test::Unit::TestCase assert_equal '1', matz.to_param end + def test_to_key_quacks_like_active_record + new_person = Person.new + assert_nil new_person.to_key + matz = Person.find(1) + assert_equal [1], matz.to_key + end + def test_parse_deep_nested_resources luis = Customer.find(1) assert_kind_of Customer, luis -- 1.7.0