2012-05-29 44 views
3

我正在使用思維獅身人面像search.It搜索properlt,但問題是每當我添加新記錄我必須做rake think_sphinx:索引手動。所以運行它自動我每當寶石:用cron但是仍然它不是自動發生的,無論是我必須做的cron與每當寶石不運行

耙thinking_sphinx:指數

每當-w創建自動索引

以下是配置/ schedule.rb的代碼:

every 10.minutes do 
    rake "thinking_sphinx:index", :environment => :development 
end 

every :reboot do 
    rake "thinking_sphinx:start",:environment => :development 
end 

,當我做的crontab -l我得到以下幾點:

# Begin Whenever generated tasks for: store 
@reboot /bin/bash -l -c 'cd /home/user/newsvn/alumnicell && RAILS_ENV=development bundle exec rake thinking_sphinx:start --silent' 

0,10,20,30,40,50 * * * * /bin/bash -l -c 'cd /home/user/newsvn/alumnicell && RAILS_ENV=development bundle exec rake thinking_sphinx:index --silent' 

# End Whenever generated tasks for: store 

什麼,在哪裏不正常的問題呢?

另外我把環境改成了開發環境,默認情況下它是生產環境,這兩個環境有什麼不同?

回答

0

您可以指定日誌文件來跟蹤錯誤,然後將其發佈到此處。

另外我建議全球設置:environment

試試這個代碼:

set :environment, :development 
set :output, 'tmp/whenever.log' 

every 10.minutes do 
    rake "thinking_sphinx:index" 
end 

every :reboot do 
    rake "thinking_sphinx:start" 
end 
0

我會建議你使用思維斯芬克斯的增量指標,而不是使用每當cron作業重建思維獅身人面像每次10分鐘。

,因爲它是描述here你應該添加一個布爾值列delta到模型中,在你define_index塊設置set_property :delta => true和運行rake ts:rebuild

就是這樣。