2013-06-12 1 views
0

У меня есть модель работы с has_many Reports. Отчет модель имеет область ...Мышление Sphinx вызывается вместо activerecord

объем: Восстановленные, где (: удален => 0)

Если я позвоню сферу от работы, как так ...

@ job.reports .undeleted

я ...

Sphinx Запрос (16.3ms) @deleted 0 сфинкс Найдено 0 результатов

Но если я называю это как ...

@ job.reports.where (: удален => 0)

я ...

Report Load (0.4ms) ВЫБРАТЬ reports * FROM WHERE reportsreports.. job_id = 1907 И reports. deleted = 0

и он возвращает единственный результат, который является ожидаемым.

Почему мы думаем, что Сфинкс вообще называется в этом случае? И это происходит только в производстве, а не в развитии. Мышление Sphinx работает в обеих средах.

+0

Есть ли у вас какие-либо сферы мышления сфинксов? – pat

+0

Я еще не объявил. Просто индексы. –

+0

Oh s ** t. Есть один. Мое приложение настолько велико, что я не могу вспомнить половину того, что я там вложил. Я чувствую себя глупо. Спасибо! –

ответ

0

Как обсуждалось в комментариях, здесь проблема заключается в области Sphinx и области ActiveRecord, использующей имя undeleted.

Я не совсем уверен, почему иногда один из них имеет приоритет, а иногда и другой, хотя я осмелюсь сказать, что это связано с перезагрузкой классов Rails в среде разработки.