我是Ruby和ThinkingSphinx的新手。 我有以下的獅身人面像查詢 - SELECT * FROM user_core
,user_delta
WHERE sphinx_deleted
= 0如何從Sphinx查詢中刪除sphinx_deleted?
我不想看到‘sphinx_deleted’= 0我如何刪除這個我已刪除了sql_attr_uint條件」? =從我的sphinx.conf文件sphinx_deleted,但我看到了sphinx_deleted查詢傳遞
這裏是索引文件的定義:。
ThinkingSphinx::Index.define :user, :with => :active_record, :delta => true do
indexes [first_name,last_name,display_name], :as=>:name, :sortable=>true
indexes first_name, :sortable => true
indexes last_name, :sortable => true
indexes display_name, :sortable => true
indexes email, :sortable => true
indexes phone, :sortable => true
indexes title, :sortable => true
has id, :as => :user_id
has roles(:id), :as => :role_ids
has jurisdictions(:id), :as => :jurisdiction_ids
set_property :delta => true
end
我沒有定義的sphinx_scope或default_sphinx_scope
我們用思維 - 獅身人面像-3.1.0和Ruby-2.1.0
帕特,感謝您的快速回復。我需要能夠檢索某個條件下的已刪除記錄,並檢索所有記錄(包括標記爲已刪除和未刪除)的其他條件。如何修改查詢,以便我有時可以傳入sphinx_deleted = 1並在其他時間忽略sphinx_deleted條件? – user6015291
增加了更多細節,但只是要清楚:如果你需要這樣做,感覺你的實現中的某些東西是不明智的,我建議找到一種不同的方法來處理這個特性,而不是使用我的任何解決方案建議。 – pat
感謝您的詳細解決方案。我不使用銷燬刪除記錄。如果我們刪除用戶,則在用戶表中設置一個deleted_at列。我不知道爲什麼獅身人面像沒有檢索已設置deleted_at的記錄。 – user6015291