Ruby on Rails Friday, January 31, 2014

I have a 2 entities which have many to many relation say teacher and subject. Each teacher has many subjects. I want to perform search on teacher by sunspot solr for all the teacher who teaches 3 subjects biology, anatomy and botany with specific time.


Say model structures and relations as follows

    Teacher - name, roll, ph no
    has many :subjects
    searchable do 
      string :subjects, multiple => true, stored => true do
      string :time, multiple => true, stored => true do

    Subject - title, time, teacher_id
    belongs_to :teacher

How would I perform solr search query for the teachers who are having all 3 subjects biology, anatomy and botany at time 3:00pm.
I am trying with following code which is not taking and condition to retrieve only the teachers teaching all the 3 subjects rather its taking as or condition. do
      with(:subjects, "biology")
      with(:subjects, "anatomy")
      with(:subjects, "botany")
      with(:time, "3:00pm")

You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To post to this group, send email to
To view this discussion on the web visit
For more options, visit

No comments:

Post a Comment