Hi Leon,
So, you're trying to consolidate code from two helpers into a single
helper that will work with any model you specify. Here's what I would
do:
In app/controller/application.rb make something similar to this:
protected
def implements_tree_for(klass)
(@tree_classes ||= {})[self.class] = klass
end
Now, place at the top of your controller (MarketplaceController, etc.):
implements_tree_for Marketplace
Then, just change the hardcoded values in your helper to the following:
@tree_classes[self.class] # this would yield Marketplace for the
previous example
For example, in your helper where you say:
def display_node
Marketplace.root()
end
change this to:
def display_node
@tree_classes[self.class].root()
end
Hope this helps!
-Jordan
On Jun 27, 2007, at 11:32 AM, Leon Yeh wrote:
Hi,
I am trying to refactoring two helper files into one single file.
The helper module is to display act_as_tree model type of object. I am
currently have two helper files that have the same exact code, so I
decided to combined them into one single file. Then have the
controller
to include the correct helper module.
My problem is at the tree helper module. I need to have access to the
model object, instead of just hardcoding the name of model object. I
tried to look around at the documentation, but got nowhere. Any
idea on how to get to the corresponding model object ?
Thanks in advance,
Leon
------------------
class MarketplaceController < ApplicationController
helper :tree
end
class ListingController < ApplicationController
helper :tree
end
module TreeHelper
def display_node
Marketplace.root() #???
end
end
Leon Yeh
New Avenue Systems Inc.
Imagination Delivered. www.newavenue.net
_______________________________________________
Sdruby mailing list
[email protected]
http://lists.sdruby.com/mailman/listinfo/sdruby
--------------------------------------------------------------
Jordan A. Fowler
1830 Market St. #4
San Diego, CA 92102
E-mail: [EMAIL PROTECTED]
AIM: virtuosojordan
Phone: 406.546.8055
_______________________________________________
Sdruby mailing list
[email protected]
http://lists.sdruby.com/mailman/listinfo/sdruby