Showing similar values in a table

R

raffir

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}%"])%>
<tr>
<td><%= account.name %></td>
<td><%= account.number %></td>
<td><%= account.user_id%></td>
</tr>
</table>
<%end%>

<% end %>


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

Thoughts?


Thanks a lot,

- Raffi.
 
J

Jan Svitok

Hi,

I'm working on a project in which Accounts belong to a User.
<table>
<%@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| %>
 
R

raffir

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.


Jan said:
Hi,

I'm working on a project in which Accounts belong to a User.
<table>
<%@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| %>
<tr>
<td><%= account.name %></td>
<td><%= account.number %></td>
<td><%= account.user_id%></td>
</tr>
</table>
<%end%>

<% end %>
 
R

raffir

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.
 
R

raffir

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 %></td>
</tr>

<%end%>
<% end %>
</table>
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,756
Messages
2,569,534
Members
45,007
Latest member
OrderFitnessKetoCapsules

Latest Threads

Top