Showing similar values in a table

I’m working on a project in which Accounts belong to a User.

I’d like the User’s Welcome page to show who else has the same Accounts
(based on account name) as that user.

What I tried to do was place a SQL query inside a for loop, such that
the loop would go through the session User’s accounts and check, in
turn, for all similarly named accounts in the Accounts table.

I think that there must be something wrong with my code; right now,
it’s as follows:

<table>
<%@session['user'].accounts.each do |i| %>
<%Accounts.find(:all, conditions = ["coursename LIKE ?",

“%#{i.coursename}%”])%>


<%= account.name %>
<%= account.number %>
<%= account.user_id%>


<%end%>
<% end %>

I’m new to Ruby, so I think syntax is the most likely culprit here.

Thoughts?

Thanks a lot,

  • Raffi.

Hi,

On 7/23/06, [email protected] [email protected] wrote:

I’m working on a project in which Accounts belong to a User.


<%@session[‘user’].accounts.each do |i| %>
<%Accounts.find(:all, conditions = [“coursename LIKE ?”,
“%#{i.coursename}%”])%>

You’re missing second ‘each’ here
<%Accounts.find(:all, conditions = [“coursename LIKE ?”,
“%#{i.coursename}%”]).each do |account| %>

Unfortunately, while it’s now showing accounts, it’s now showing every
single account. I’d just like it to show accounts with the same name as
the session user’s.

Thanks,

- Raffi.

Fixed it!

The line was missing a colon. I changed it to:

<%Accounts.find(:all, :conditions => [“coursename LIKE ?”,
“%#{i.coursename}%”]).each do |account| %>

A question about the SQL query: how do I add another clause? For
example, what if I’d like to search by coursename (as above) and
coursenumber?

Thanks,

  • Raffi.

Mysteriously stopped working again.

Code is as follows:

<h3><u>Who's in my courses?</u></h3>
<table>
<%@session['user'].accounts.each do |i| %>
<%Accounts.find(:all, :conditions => ["coursename LIKE ?",

“%#{i.coursename}%”]).each do |account| %>

        <tr>
        <td><%= account.coursename %></td>
        <td><%= account.coursenumber %></td>
		<td><%= account.first_name%> <%= account.last_name%></td>
		<td><%= link_to 'Show', :controller=>'user', :action=>'userdetails',

:id=> account.user_id %>

        <%end%>
<% end %>