Ruby Forum Ruby on Rails > Custom SQL queries

Posted by Günther Lackner (lackyg)
on 06.11.2008 11:55
Hi!

I need the results of a custom SQL query to create a list in a view.

Thats the query:

@classes = ActiveRecord::Base.connection.execute "SELECT DISTINCT CLASS
FROM SymbolsMatch_MASTER"

And thats the part of the view:

<ul>
 <% for class_name in @classes do %>
  <li>
   <a href="#"><%= class_name %></a>
  </li>
<% end %>

but @classes is always NULL here...

What am I doing wrong?

Thx
lack
Posted by Frederick Cheung (Guest)
on 06.11.2008 12:11
(Received via mailing list)
On 6 Nov 2008, at 10:55, Günther Lackner wrote:

>
execute just executes without returning anything. If you want the
result then you want one of select_all/select_values/select_value
etc... (in this particular case select_values would do the trick)

Fred
Posted by Fernando Perez (fernando)
on 06.11.2008 12:15
> @classes = ActiveRecord::Base.connection.execute "SELECT DISTINCT CLASS
> FROM SymbolsMatch_MASTER"

This is the trick:
ActiveRecord::Base.connection.execute(your_sql).extend(Enumerable).to_a