Richard> Hello All, I ussually iterate a hash that is the result of
Richard> $rows_ref = $sth->fetchall_hashref('ID'); in my template
Richard> with  <% FOREACH ID Matched_pats.keys.sort %>. However, In
Richard> this case though the template only displays one row because
Richard> each resulting row in the SQL query all have the same ID
Richard> number. Is there any simple change I can make to get the
Richard> results to fully iterate?

What you generally need to do in this case is do multiple queries, or
you need to redo your structure so that you key off something else.  

For example, if each user can have one or more charities, you want to
print out something like:


   User: John
   Charity:   RedCross
              NPR Station
              Local Park
              Big Park across county

   User: Richard
   Charity:        Dancer

   User: Bob

   User: Steve
   Charity:        RedCross


So youre temply would loop over the users, then over the charity field
for each user.  It's the One->Many relationship printing.  

The inefficient way is to do a select for all the users, then a query
per-user for each charity they have.  Or as you've shown, doing a big
join also works.  But when you want to paginate your results, doing a
limit as early as possible might make alot of sense to save crawls
through the DB.

So the template would do something like:

<% FOREACH NAME .... %>
   User: <% name %>
   <% FOREACH Charity NAME->.... %>
      Charity: <% Charity %>
   <% END %>
<% END %>

But my syntax is completly off since I don't know TT off the top of my
head.

John

_______________________________________________
dancer-users mailing list
[email protected]
http://lists.preshweb.co.uk/mailman/listinfo/dancer-users

Reply via email to