From 395ff81e69b53c9bb9b5b9001794c25a58c7e139 Mon Sep 17 00:00:00 2001 From: Tammer Saleh Date: Wed, 21 Jan 2009 06:54:26 -0800 Subject: [PATCH 1/3] Added #id that returns nil to play nice with form_for(@presenter) --- lib/active_presenter/base.rb | 7 ++++++- test/base_test.rb | 4 ++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/active_presenter/base.rb b/lib/active_presenter/base.rb index 9acbe54..f344e96 100644 --- a/lib/active_presenter/base.rb +++ b/lib/active_presenter/base.rb @@ -59,7 +59,7 @@ def initialize(args = {}) self.attributes = args end - + # Set the attributes of the presentable instances using the type_attribute form (i.e. user_login => 'james') # def attributes=(attrs) @@ -139,6 +139,11 @@ def update_attributes(attrs) save end + def id # :nodoc: + # We override #id to return nil to play nice with form_for(@presenter) in Rails + nil + end + protected def presented_instances presented.keys.map { |key| send(key) } diff --git a/test/base_test.rb b/test/base_test.rb index 989ae61..a9fba2b 100644 --- a/test/base_test.rb +++ b/test/base_test.rb @@ -1,6 +1,10 @@ require File.dirname(__FILE__)+'/test_helper' Expectations do + expect nil do + SignupPresenter.new.id + end + expect :user => User, :account => Account do SignupPresenter.presented end From 08d27ac0d55f9569744161024770dd2a491db94b Mon Sep 17 00:00:00 2001 From: Tammer Saleh Date: Wed, 21 Jan 2009 07:35:18 -0800 Subject: [PATCH 2/3] Added #new_record? which is also used by form_for(@presenter) --- lib/active_presenter/base.rb | 6 +++++- test/base_test.rb | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/active_presenter/base.rb b/lib/active_presenter/base.rb index f344e96..a5c72a6 100644 --- a/lib/active_presenter/base.rb +++ b/lib/active_presenter/base.rb @@ -139,10 +139,14 @@ def update_attributes(attrs) save end + # We define #id and #new_record? to play nice with form_for(@presenter) in Rails def id # :nodoc: - # We override #id to return nil to play nice with form_for(@presenter) in Rails nil end + + def new_record? + true + end protected def presented_instances diff --git a/test/base_test.rb b/test/base_test.rb index a9fba2b..299e492 100644 --- a/test/base_test.rb +++ b/test/base_test.rb @@ -5,6 +5,10 @@ SignupPresenter.new.id end + expect true do + SignupPresenter.new.new_record? + end + expect :user => User, :account => Account do SignupPresenter.presented end From 0b82d06ad067897ccf3f032a1796f281083d395c Mon Sep 17 00:00:00 2001 From: James Golick Date: Thu, 22 Jan 2009 10:28:09 -0500 Subject: [PATCH 3/3] bump version --- lib/active_presenter/version.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/active_presenter/version.rb b/lib/active_presenter/version.rb index 2099b4f..09c03fa 100644 --- a/lib/active_presenter/version.rb +++ b/lib/active_presenter/version.rb @@ -2,7 +2,7 @@ module ActivePresenter module VERSION MAJOR = 0 MINOR = 0 - TINY = 5 + TINY = 6 STRING = [MAJOR, MINOR, TINY].join('.') end