2012-10-02 1 views
0

Я использую мышление сфинкс с параметром sphinx_select создать динамическое поле, например, так:Как получить доступ к sphinx_select в результатах поиска?

@subjects = Subject.search(sphinx_select: "*, petals < 1 or color = 2 as my_attribute") 

Есть ли способ получить доступ к custom_attribute в результатах поиска? Например:

@subjects.each do |s| 
    s.my_attribute 
end 

возвратов

undefined method `my_attribute' for #<Subject:0x007fb25cdcdb18> 

ответ

0

ли некоторое рытье в источнике мышления сфинкса и понял это. Динамические атрибуты хранятся в объекте match, к которому можно получить доступ так:

@subjects.each_with_match do |s, match| 
    match[:attributes]["my_attribute"] 
end