Cita:
Iniciado por WebDeveloperZ Que tal, tengo el modelo categorias:
Código:
class Categorias(models.Model):
padre_id = models.ForeignKey(Categorias)
orden = models.IntegerField(max_length=2)
titulo = models.CharField(max_length=150,'Título')
class Meta:
order_with_respect_to = 'orden'
Dado ese modelo necesito que el atributo padre_id apunte al id de esa misma tabla.
Es para tratar categorias y sub-categorias,
si padre_id equivale a 0 significa que es una categoria padre, mientras que si es igual a un numero distinto de 0 es asi porque pertenece a una categoria con padre_id = 0
Ok aquí la explicación de por que esta mal (la parte en negritas).
Primero algunas propiedades:
Una categoría padre es cualquier categoría que tenga hijos.
Una categoría terminal es cualquier categoría que no tenga hijos.
Una categoría raíz es cualquier categoría que no tenga ID padre.
Una categoría padre es mutuamente excluyente de una categoría terminal.
Pero no son mutuamente excluyentes con una categoría raíz.
Explicación:
Una categoría (y en general cualquier registro) no se puede referenciar a menos que haya sido creado primero. ¿Como intentas refenciar al misma categoría si no ha sido creado en primera instancia?