Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

205
Visualizações
configurar el formulario de campo de slug manualmente en las vistas Django

Soy nuevo en Django y estoy tratando de completar previamente uno de los campos de mi formulario con un slug.

Estoy recibiendo la babosa de otro modelo. No estoy usando ForeignKey porque eso me muestra una lista con mis objetos y quiero guardar en el formulario el mismo slug que estoy usando en la url.

Tal vez no estoy pensando esto bien. ¿Qué tengo que hacer?

¡Gracias!

Estos son mis modelos:

 from django.db import models class Thing(models.Model): name = models.CharField(max_length=255,) rut = models.CharField(max_length=12, blank= True) cel = models.CharField(max_length=12, blank= True) slug = models.SlugField(unique=True) class Control(models.Model): id_p = models.SlugField() pa = models.CharField(max_length=3,)

mis formularios

 from django.forms import ModelForm from collection.models import Thing, Control, Medicamento class ThingForm(ModelForm): class Meta: model = Thing fields = ('name', 'rut','cel','pet',) class ControlForm(ModelForm): class Meta: model = Control exclude = ['id_p']

Esto es lo que estoy haciendo en las vistas.

 def add_control(request, slug): thing = Thing.objects.get(slug=slug) form_class = ControlForm form_class(initial={'id_p':thing}) if request.method == 'POST': form = form_class(request.POST) if form.is_valid(): form.save() return redirect('thing_detail', slug=thing.slug) else: form = form_class() return render(request, 'things/control.html', { 'thing': thing, 'form': form, })
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Entonces, ¡lo descubro! En views.py, después de "if form.is_valid():" pongo esto:

 prev = form.save(commit=False) prev.id_p = thing.slug prev.save()

De esa manera pongo los datos en el campo excluido antes de confirmar el formulario.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda