tengo los siguientes modelos:Cómo limitar la elección de opciones de campo basado en otro campo de elección en administración de Django
class Category(models.Model):
name = models.CharField(max_length=40)
class Item(models.Model):
name = models.CharField(max_length=40)
category = models.ForeignKey(Category)
class Demo(models.Model):
name = models.CharField(max_length=40)
category = models.ForeignKey(Category)
item = models.ForeignKey(Item)
En la interfaz de administración cuando se crea una nueva demostración, cuando el usuario coge la categoría en el menú desplegable, lo haría desea limitar el número de opciones en el menú desplegable "Elementos". Si el usuario selecciona otra categoría, las opciones de elementos deberían actualizarse en consecuencia. Me gustaría limitar las opciones de artículos directamente en el cliente, incluso antes de que llegue a la validación del formulario en el servidor. Esto es para la usabilidad, ya que la lista de elementos podría ser más de 1000 y poder reducirla por categoría ayudaría a que sea más manejable.
¿Hay una "manera django" de hacerlo o JavaScript personalizado es la única opción aquí?
¿Realmente no hay forma de configurar esto en los modelos Django? –
Sí, lo hay. Con una aplicación de terceros. Ver mi respuesta –