Forum: Ruby on Rails acts_as_tree question

Posted by db_333 (Guest)
on 2010-02-09 06:48
(Received via mailing list)
Hi,

I'm trying to implement a very simple acts_as_tree search in my index
html.

I am able to show the parents, with no issue, but the children will
not show.

I have something like this for the parent, which displays fine:

<% for group in Group.roots %>
<td>
  <tr>
  <a href="#" onclick="Effect.BlindDown('show_<%= group.id%>');return
false;">+</a>
     <!-- calls the show method, but utilizes the acts_as_tree -->
     <%= link_to (group.name), group  %>  <br>
     <div id ="show_<%= group.id%>" style="display:none;">

For the children, however, using the following will not work because
it is looking to the index method.

<% for group in Group.children %>
<%= link_to (group.name), groups %>

Any pointers?  Should I be using object.children to get the children?
thanks
Posted by Gianluca Tessarolo (Guest)
on 2010-02-09 08:31
(Received via mailing list)
Hi,

I think you've made a little mistake...

The correct form is this:

<% for group in Group.roots %>
  ...
  <%= link_to (group.name), group  %>
  ...
  <% for child in group.children %>
    ...
    <%= link_to (child.name), child %>
    ...

Notice the use of "group.children" instead "Group.children"

Hope this helps...
Posted by db_333 (Guest)
on 2010-02-09 08:49
(Received via mailing list)
Yes, this was helpful, and I appreciate it.  Thanks for your reply.


On Feb 8, 11:29 pm, Gianluca Tessarolo
Posted by Marnen Laibow-Koser (marnen)
on 2010-02-09 14:13
db_333 wrote:
> Yes, this was helpful, and I appreciate it.  Thanks for your reply.
> 
> 
> On Feb 8, 11:29�pm, Gianluca Tessarolo

You probably don't want acts_as_tree in any case.  Awesome_nested_set is 
much more efficient.

Best,
-- 
Marnen Laibow-Koser
http://www.marnen.org
marnen@marnen.org
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.