2013-02-12 3 views
0

У меня возникли проблемы с отображением всех моих напитков в моем index.html.haml. Я недавно переехал, чтобы начать использовать мышление сфинкс для поиска после просмотра Ryan Bates' (thinking sphinx railscast. В рамках переезда в Sphinx я изменил @drinks = Drink.all к @drinks = Drink.search(params[:search]) и теперь его не показывать название напитка на моей странице индексаВыводить результаты поиска по индексу

Напиток модели

class Drink < ActiveRecord::Base 

    attr_accessible :name, :detail, :recipe_steps_attributes 

    has_many :recipe_steps, :dependent => :destroy 
    has_many :ingredients, through: :recipe_steps 
    has_one :glass 

    validates_uniqueness_of :name, case_sensitive: false 

    accepts_nested_attributes_for :recipe_steps, :reject_if => lambda { |a| a[:amount].blank? }, :allow_destroy => true 

    define_index do 
    indexes :name 
    indexes ingredients.name as: :ingredient_name 
    end 
end 

индекс Пейте контроллер

def index 
    @drinks = Drink.search(params[:search]) 
    if current_user 
     @cabinet = Cabinet.find(current_user.id) 
    end 
    end 

Напиток index.haml

= form_tag drinks_path, method: :get do 
    .field 
    = text_field_tag :search, params[:search] 
    = submit_tag "Search", name: nil 

- @drinks.each do |drink| 
    = drink.name 
+2

ли вы запустить 'грабли ц: index'? И если вы получаете какие-то ошибки - о чем они? – shrimpsushi

+0

я не получаю никаких ошибок запуска рек ц: индекс я получаю: индексации индекса «drink_core» ... собрали 2 Документы, 0,0 MB отсортированных 0,0 Mhits, 100,0% сделаны всего 2 докторов, 16 байты всего 0,015 с, 1018 байт/с, 127,33 док/сек пропуская не-равный индекс «напиток» ... всего 3 раза, 0,000 с, 0,0 кб/звонок, 0,0 мс/звонок avg всего 9 записей , 0,000 с, 0,0 кб/звонок avg, 0,0 мс/звонок avg' – BrianJakovich

+0

Безразлично, я думаю, что понял это. Мне нужно индексировать после того, как база данных будет заполнена новыми полями ... Каков наилучший способ убедиться, что это происходит всякий раз, когда добавляется новая запись? – BrianJakovich

ответ

1

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

Как предложил TomL, лучший способ борьбы с этим иметь хрон периодически запускать

rake ts:rebuild 
Смежные вопросы