Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] Múltiples Checkboxes en Django Admin

Estas en el tema de Múltiples Checkboxes en Django Admin en el foro de Python en Foros del Web. Hola chicos, estoy tratando de añadir un campo "color" con múltiples checkboxes, como si se tratara de un campo CharField pero con Choices, con la ...
  #1 (permalink)  
Antiguo 04/09/2013, 18:57
 
Fecha de Ingreso: junio-2013
Mensajes: 2
Antigüedad: 11 años, 6 meses
Puntos: 0
Múltiples Checkboxes en Django Admin

Hola chicos, estoy tratando de añadir un campo "color" con múltiples checkboxes, como si se tratara de un campo CharField pero con Choices, con la diferencia que necesito que cada "choice" sea mostrado como un checkbox aparte, en donde se puedan marcar ninguno, uno, o varios.

Mi modelo es bastante simple, corresponde a una tabla que almacena zapatos con datos relevantes al producto:

MODELS.PY
Código:
from django.db import models

class Zapato( models.Model ):
	TECNOLOGIAS = ( )
	SUBMARCAS = ( )
	COLORES = ( )

	nombre = models.CharField( max_length = 40, blank = False )
	articulo = models.CharField( max_length = 70, primary_key = True )
	material = models.CharField( max_length = 80, blank = True )
	planta = models.CharField( max_length = 50, blank = True )
	numeracion = models.CharField( max_length = 30, blank = True )
	recomendaciones = models.TextField( max_length = 200, blank = True )
	nuevo = models.BooleanField( default = False )
	color = forms.MultipleChoiceField( choices = COLORES ) # MULTPLES CHECKBOXES
	tecnologia = models.CharField( choices = TECNOLOGIAS, max_length = 20 )
	submarca = models.CharField( choices = SUBMARCAS, max_length = 20 )
	ingreso = models.DateTimeField( auto_now_add = True )
He estado googleando toda la tarde y no encuentro una manera de integrarlo, he visto algunos códigos pero mucho más grandes que no logro entender nada, es por eso que recurro a ustedes.

Espero me puedan ayudar con este problema.
Saludos.
  #2 (permalink)  
Antiguo 04/09/2013, 21:51
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: Múltiples Checkboxes en Django Admin

En tu form, haces un override del widget que usa por defecto por CheckboxSelectMultiple.
  #3 (permalink)  
Antiguo 04/09/2013, 22:31
 
Fecha de Ingreso: junio-2013
Mensajes: 2
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Múltiples Checkboxes en Django Admin

Muchas gracias, eso me dió una pista, pude resolverlo dejando el campo "color" como un CharField en models.py y colocando en la clase admin.py lo siguiente (versión simplificada):

Código:
... # imports
from django import forms

class Zapato_Admin_ModelForm( forms.ModelForm ):
	color = forms.MultipleChoiceField( choices = models.Zapato.COLORES, widget = forms.CheckboxSelectMultiple )

	class Meta:
		model = models.Zapato

class Zapato_Admin( admin.ModelAdmin ):
	form = Zapato_Admin_ModelForm

admin.site.register( models.Zapato, Zapato_Admin )

Última edición por diegoulloa; 06/09/2013 a las 13:32

Etiquetas: admin, checkboxes, django
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:00.