were to put a method

Try this: (Assuming you have a Model defined as: Prop
and that model has an attribute called "category":

<% Prop.find_all_by_category("car").each do |prop| %>
<li><a class="list_item" href=""<%=h prop.year %>&nbsp;<%=h prop.title
%></a></li>
<% end %>

-Danimal

Well i tried what you said, and it worked.
one thing though. I have multiple items in my category column in the
db, seperated by spaces.. and this is what i tried, with no luck if
there are more than one item.

  def find_all_by_category(item)
    self.find(:all, :params => {:category => /#{item}/})
  end

Just incase anyone was wondering, this is what i came up with after
more reading of the api and spending some time on freenode, hope it
helps you.
  def self.find_all_by_category(item)
    self.find( :all, :conditions => ["category like ?", "%#{item}%"] )
  end

Ilya,

That looks good! Glad you got it working. Basically, it's a way to do
matches on substrings of category. I.e. if I have a category of "Car"
I could do: Prop.find_all_by_category("ar") and it would match "Car"
and anything else like that.

The one thing I'd caution you on: this may end up being confusing in
the future. "find_all_by_X" (where X is some attribute on that model)
is already part of AR associations. So you are redefining an existing
method to work differently, which may confuse you or mess you up
later. My recommendation is to call it something differently, maybe
like: find_by_category_substring(item).

Just a suggestion though. :slight_smile:

-Danimal