koloa
2006-Dec-11 23:51 UTC
[Ferret-talk] easy question, how would i search a grandparent???!
hi,
i have this in my code
Article.find_by_contents("#{searchstring} +city:#{passedincity}")
well that returns to me only articles that belong to whatever the user
selected in city.
now is it possible to search the grandparent?
for example
class country
has_many states
class states
has_many cities
belongs_to country
class city
belongs_to states
......
i would like to search articles that only belong to a country.
something like...
Article.find_by_contents("#{searchstring}
+states.country:#{passedincountry}")
--
Posted via http://www.ruby-forum.com/.
Jens Kraemer
2006-Dec-12 09:48 UTC
[Ferret-talk] easy question, how would i search a grandparent???!
On Tue, Dec 12, 2006 at 12:51:28AM +0100, koloa wrote:> hi, > i have this in my code > > Article.find_by_contents("#{searchstring} +city:#{passedincity}") > > well that returns to me only articles that belong to whatever the user > selected in city. > > now is it possible to search the grandparent? > > for example > > class country > has_many states > > class states > has_many cities > belongs_to country > > class city > belongs_to states > > ...... > > i would like to search articles that only belong to a country. > something like... > Article.find_by_contents("#{searchstring} > +states.country:#{passedincountry}")you''ll have to index state and country whith each article, through indexed methods. there are plenty of examples of how to do this in the archives. Jens -- webit! Gesellschaft f?r neue Medien mbH www.webit.de Dipl.-Wirtschaftsingenieur Jens Kr?mer kraemer at webit.de Schnorrstra?e 76 Tel +49 351 46766 0 D-01069 Dresden Fax +49 351 46766 66
koloa
2006-Dec-12 12:56 UTC
[Ferret-talk] easy question, how would i search a grandparent???!
hi Jens, Thanks i found out what i needed in this thread http://www.ruby-forum.com/topic/72206#104924 i guess for the grandparent, i will just do... ============================| posts ============================ id title content category_id ============================| categories ============================ id name grandparent_id ============================| grandparent ============================ id name ------------------------------ class Posts acts_as_ferret :fields => [ ''title'', ''content'', :grandparent_name] def grandparent_name category.maincategories_id.name end ? -- Posted via http://www.ruby-forum.com/.
Jens Kraemer
2006-Dec-12 13:13 UTC
[Ferret-talk] easy question, how would i search a grandparent???!
On Tue, Dec 12, 2006 at 01:56:48PM +0100, koloa wrote:> hi Jens, > Thanks i found out what i needed in this thread > > http://www.ruby-forum.com/topic/72206#104924 > > i guess for the grandparent, i will just do... > > ============================> | posts > ============================> id > title > content > category_id > > ============================> | categories > ============================> id > name > grandparent_id > > ============================> | grandparent > ============================> id > name > ------------------------------ > > > class Posts > acts_as_ferret :fields => [ ''title'', ''content'', :grandparent_name] > > def grandparent_name > category.maincategories_id.name > end > > ?from your tables above I''d guess category.grandparent.name Jens -- webit! Gesellschaft f?r neue Medien mbH www.webit.de Dipl.-Wirtschaftsingenieur Jens Kr?mer kraemer at webit.de Schnorrstra?e 76 Tel +49 351 46766 0 D-01069 Dresden Fax +49 351 46766 66
koloa
2006-Dec-12 23:59 UTC
[Ferret-talk] easy question, how would i search a grandparent???!
Hello Jens thanks for the help, however something is still not quite
right with my code.
my view
Howto.find_by_contents("#{srchstring} +main_category:#{category}")
howto class
belongs_to :scategory
acts_as_ferret :field=>["title", "setup", :main_category]
def main_category
scategory.mcategory.name
end
when i did a manual ''get a howto'' object and executed the
function
main_category on it, the main category was returned correctly. i think
right now, the problem is the :main_category is not getting indexed.
whats odd is that on my console print out screen, all the attributes for
my model howto are getting indexed, not just the ones i specify. is this
correct?
this is what gets printed out to the console, i dont see anything for
:main_category.
creating doc for class: Howto, id: 1
Adding field linktosite with value ''none'' to index
Adding field user_id with value ''1'' to index
Adding field title with value ''how to cook a steak chips'' to
index
Adding field created_at with value ''Tue Dec 12 00:00:00 EST
2006'' to
index
Adding field scategory_id with value ''1'' to index
Adding field setup with value ''pan, oil, salt, etc...'' to
index
Adding field howto with value ''boisdv oios oisdj vojv ojsdo voisjdv oij
oisdvoi jv joi dsjvio jsvdoi j'' to index
my problem must be really silly.
--
Posted via http://www.ruby-forum.com/.
koloa
2006-Dec-13 00:07 UTC
[Ferret-talk] easy question, how would i search a grandparent???!
i found one silly problem...fields and not field! -- Posted via http://www.ruby-forum.com/.