Forum: Ruby on Rails Queries with has_and_belongs_to_many relationship

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Ben (Guest)
on 2006-05-08 06:23
I was able to create a has_and_belongs_to_many relationship for my app,
but now I'm not too sure how to write queries for it.

Basically, I have a table 'courses' that has_and_belongs_to_many
'categories' and vice versa

So I'm trying to figure out how I would find only the courses that
belong to a category that I specify.

Let's say the category is 'math' and the categories are in a column
named 'name'

Any help would be great.
Ben R. (Guest)
on 2006-05-08 06:28
(Received via mailing list)
Category.find(:first, :condition => "name = math").courses

Or something to that effect should do the trick.

On 5/7/06, Ben <removed_email_address@domain.invalid> wrote:
> named 'name'
>
> Any help would be great.
>
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> Rails mailing list
> removed_email_address@domain.invalid
> http://lists.rubyonrails.org/mailman/listinfo/rails
>


--
Ben R.
303-947-0446
http://www.benr75.com
Daniel -. (Guest)
on 2006-05-08 06:32
(Received via mailing list)
@courses_in_cat = Category.find_by_name('math', :first).courses

This should give you back an array for all the courses in the math
category.

The opposite is also true.

@categories_for_course = Course.find_by_name('some course',
:first).categories

To add Courses to a Category
@some_category << @an_array_of_courses
and vise versa
@some_course << @an_array_of_categories
This topic is locked and can not be replied to.