with tutorial pelicula learning how español descargar python django

python - tutorial - django windows



En Django, ¿hay alguna manera de mostrar las opciones como casillas de verificación? (2)

En términos de la biblioteca de formularios, debe usar el campo MultipleChoiceField con un widget CheckboxSelectMultiple para hacer eso. Puede validar la cantidad de opciones que se hicieron al escribir un método de validación para el campo:

class MyForm(forms.Form): my_field = forms.MultipleChoiceField(choices=SOME_CHOICES, widget=forms.CheckboxSelectMultiple()) def clean_my_field(self): if len(self.cleaned_data[''my_field'']) > 3: raise forms.ValidationError(''Select no more than 3.'') return self.cleaned_data[''my_field'']

Para obtener esto en la aplicación de administración, deberá personalizar un ModelForm y anular el formulario utilizado en el ModelAdmin apropiado .

En la interfaz de administración y en las formas nuevas, está el brillante ayudante de poder definir elecciones. Puedes usar un código como este:

APPROVAL_CHOICES = ( (''yes'', ''Yes''), (''no'', ''No''), (''cancelled'', ''Cancelled''), ) client_approved = models.CharField(choices=APPROVAL_CHOICES)

para crear un cuadro desplegable en su formulario y forzar al usuario a elegir una de esas opciones.

Me pregunto si existe una forma de definir un conjunto de opciones donde se puedan elegir múltiples usando casillas de verificación. (También sería bueno poder decir que el usuario puede seleccionar un número máximo de ellos.) Parece que es una característica que probablemente esté implementada, es solo que parece que no puedo encontrarla en la documentación.