Pregunta

Tengo problemas para que ThinkingSphinx reconozca mis condiciones.

Mi modelo de discusión incluye el siguiente código:

define_index do
  indexes [subject, body], :as => :text
  indexes replies.body, :as => :reply_text
  set_property :delta => true
end

Y como se esperaba esta búsqueda

Discussion.search "handy"

devuelve cualquier discusión con la palabra "práctico" en su tema, cuerpo o cuerpo de una de sus respuestas.

Ahora estoy implementando un " borrando publicaciones " función, y quiero mostrar solo discusiones donde el campo llamado: disabled == false.

Desafortunadamente, esta búsqueda:

Discussion.search "handy", :conditions => { :disabled => false }

siempre devuelve una matriz vacía, no importa qué.

¿Por qué?

¿Fue útil?

Solución

Deberá tener un atributo deshabilitado definido en su bloque define_index :

define_index do
  indexes [subject, body], :as => :text
  indexes replies.body, :as => :reply_text

  has disabled

  set_property :delta => true
end

Una vez que haya hecho esto, detenga Sphinx, vuelva a indexar y reinicie, y con suerte debería funcionar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top