¿Cómo se ejecuta un bloque "hacer" en un modelo de Rails sin dejar de enumerar un: dependiente?

StackOverflow https://stackoverflow.com/questions/282178

Pregunta

Entonces tengo un modelo de Usuario que: tiene muchos otros modelos como Documentos, Videos, Publicaciones y similares. Mi pregunta surge cuando ejecuto un '' do '' bloquear desde el modelo de usuario así:

has_many :posts do
    def recent
      find(:all, :order => 'created_at desc', :limit => 12)
    end
  end

Esto solo me permite llamar a algo como user.posts.recent para encontrar solo las publicaciones asociadas con el usuario. Con esto en su lugar, ¿cómo puedo agregar un: dependiente = > : destruir o: dependiente = > : delete_all a esta asociación? Todo lo que he intentado hasta ahora me ha fallado.

¿Fue útil?

Solución

Parece que deberías echar un vistazo usando named_scope .

No hay ninguna razón por la que deba tener un bloqueo contra su asociación.

Usted debe convertir ese método reciente en un ámbito con nombre y luego puede agregar: dependiente = > destruir, etc., etc.

¡Buena suerte!

Otros consejos

Esto debería funcionar bien AFAIK:

has_many :posts, :dependent => :destroy do
    def recent
      find(:all, :order => 'created_at desc', :limit => 12)
    end
  end
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top