ModelForm com ForeignKey

1. ModelForm com ForeignKey

Carlos A. Parisotto
carlosparisotto

(usa Red Hat)

Enviado em 30/03/2015 - 10:07h


Buenas.

Sou novato(bem novato) com Python e Django e estou tentando fazer uma aplicação de formulários e não estou conseguindo trabalhar corretamente com as Foreign Keys. Ex.:
Tenho uma tabela Station e uma tabela Person, nessa segunda tenho um campo Station, que é uma FK para a primeira. O formulário funciona corretamente, mas na minha tela
quando aparece as opções de Station para eu escolher, todas aparecem como "Station Object", gostaria de poder escolher pelo nome a opção.
Meus códigos:

MODELS.PY:
class Person(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
station = models.ForeignKey("Station")
def __unicode__(self):
return "{0} {1}".format(self.first_name, self.last_name)

class Station(models.Model):
station_name = models.CharField(max_length=50)
def __unicode(self):
return str(self.station_name)

FORMS.PY:
class FormPerson(forms.ModelForm):
class Meta:
model = Person

VIEWS.PY:
def addperson(request):
if request.method == "POST":
form = FormPerson(request.POST, request.FILES)
if form.is_valid():
form.save()
return render_to_response("salvo.html",{})
else:
form = FormPerson()
return render_to_response("adiciona.html", {'form': form},
context_instance=RequestContext(request))


ADICIONA.HTML:
<form action="" method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Adicionar</button>
</form>



Desde já agradeço a paciência com este iniciante em Python :)


  


2. RESOLVIDO!

Carlos A. Parisotto
carlosparisotto

(usa Red Hat)

Enviado em 31/03/2015 - 11:51h

Era apenas uns caracteres errados. No final da Class Station, no Models, coloquei:

def __unicode__(self):
return self.station_name








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts