No permitir eliminar registros relacionados

Seguro que es una chorrada pero no encuentro como hacerlo. Tengo una
tabla de categorias y otra de productos. Me gustaria que cuando alguien
intenta eliminar una categoria no le deje si tiene productos asociados.

Alguien lo ha hecho antes?

Gracias

Hola
Se me ocurre con un filtro, no se como tengas las relaciones

class Categorias < ActiveRecord::Base
before_destroy :check_productos

def destroy
if Categoria.find(params[:id]).destroy
flash[:notice] = ‘borrado’
else
flas[notice] = ‘No borrado, hay productos asociados?’
end
end

protected
def check_productos
self.productos.count > 0 ? false : true
end

saludos
Hermán Fernandez
netflux.com.ar

On 2/23/07, Emili Parreño [email protected] wrote:

Seguro que es una chorrada pero no encuentro como hacerlo. Tengo una
tabla de categorias y otra de productos. Me gustaria que cuando alguien
intenta eliminar una categoria no le deje si tiene productos asociados.

Alguien lo ha hecho antes?

Gracias

Hice un plugin para incluir a la opción :dependent el valor :protect
que impide borrar una fila si existen filas relacionadas haciendo
saltar una excepción antes de borrar ninguna fila.

La página del plugin esta en
http://ruido-blanco.net/blog/rails-plugin-dependent-protect-espanol

Espero que te sirva.