Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

109
Vistas
Casillas de verificación y botones de radio en Django ModelForm

Bienvenidos amigos,

Soy un novato en Django. Necesito tu ayuda. En serio.

Quiero agregar casillas de verificación y botones de opción en mi formulario.

Cualquier ayuda será apreciada.

modelos.py

 from django.db import models from shop.models import Product class Order(models.Model): first_name = models.CharField(max_length=50) last_name = models.CharField(max_length=50) email = models.EmailField() address = models.CharField(max_length=250) postal_code = models.CharField(max_length=20) city = models.CharField(max_length=100) created = models.DateTimeField(auto_now_add=True) updated = models.DateTimeField(auto_now=True) paid = models.BooleanField(default=False) class Meta: ordering = ('-created',) def __str__(self): return 'Order {}'.format(self.id) def get_total_cost(self): return sum(item.get_cost() for item in self.items.all())

formularios.py

 from django import forms from .models import Order class OrderCreateForm(forms.ModelForm): class Meta: model = Order fields = ['first_name', 'last_name', 'email', 'address', 'postal_code', 'city']

crear.html

 {% extends "shop/base.html" %} {% block title %} Checkout {% endblock %} {% block content %} <h1>Checkout</h1> <form action="." method="post" class="order-form"> {{ form.as_p }} <p><input type="submit" value="Place order"></p> {% csrf_token %} </form> {% endblock %}

Cualquier sugerencia es bienvenida. Por favor ayuda.

ACTUALIZAR

¿Cómo agregar la opción de selección?

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

puedes hacer algo como esto

 CHOICES=[('item1','item 1'), ('item2','item 2')] class OrderCreateForm(forms.ModelForm): postal_code = forms.ChoiceField(choices=CHOICES, widget=forms.RadioSelect()) .... class Meta: model = Order fields = ['first_name', 'last_name', 'email', 'address', 'postal_code', 'city']

Del mismo modo, también puede hacerlo para el otro campo.

y para la casilla de verificación, puede definirlo como BooleanFileld y puede usar

 {{ form.paid }}

en tu plantilla.

about 4 years ago · Santiago Trujillo Denunciar

0

El formulario se representará con los tipos de campo que defina en el modelo:

  • BooleanField se representa como una casilla de verificación, pagada en su caso.
  • ChoiceField se puede representar como botones de radio con el widget apropiado.

Puede redefinir los widgets en la clase OrderCreateForm:

CHOICES = [('option1','label 1'), ('option2','label 2')] some_field = forms.ChoiceField(choices=CHOICES,widget=forms.RadioSelect())

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda