私のプロジェクトについての質問があり、期待した結果を得るためにはアドバイスが必要だと思います。選択肢リストから表示要素を減らすDjango
私は非常にうまく動作する個別の処方箋を作成しましたが、今ではBirthCertificateフォームを作成したいと思います。
しかし、私の心に問題がID Parent1
とID Parent2
に位置しています。二つ目は、次のように最初の1からの値をとります。このフィールドは、行ごとにすべての値を表示しますが、私は違うしたいと思います:
- 初のソリューションを:私はすべての行を表示しますが、単に
Lastname
Firstname
Birthdate
- 第二の溶液:私は研究のバーを取得するためにさせるようにしよう
Parent1
およびParent2
問題は次のとおりです。どのようにすればいいですか?
これは私のmodels.pyファイルです:これは私のforms.pyファイルある
class BirthCertificate(models.Model):
lastname = models.CharField(max_length=30, null=False, verbose_name='Nom de famille')
firstname = models.CharField(max_length=30, null=False, verbose_name='Prénom(s)')
sex = models.CharField(max_length=1, choices=SEX_CHOICES, verbose_name='Sexe')
birthday = models.DateField(null=False, verbose_name='Date de naissance')
birthhour = models.TimeField(null=True, verbose_name='Heure de naissance')
birthcity = models.CharField(max_length=30, null=False, verbose_name='Ville de naissance')
birthcountry = models.ForeignKey(Country, related_name='Pays_Naissance', verbose_name='Pays de naissance')
fk_parent1 = models.ForeignKey(Identity, related_name='ID_Parent1', verbose_name='ID parent1', null=True)
fk_parent2 = models.ForeignKey(Identity, related_name='ID_Parent2', verbose_name='ID parent2', null=True)
:機能、そして、
from django import forms
from BirthCertificate.models import *
class BirthCertificateForm(forms.ModelForm) :
class Meta :
model = BirthCertificate
fields = '__all__'
views.pyファイルからはました処方箋を作成して記入してください:
def BirthCertificate_Form(request) :
# Fonction permettant de créer le formulaire Acte de Naissance et le remplissage
Bform = BirthCertificateForm(request.POST or None)
if Bform.is_valid() : # Vérification sur la validité des données
Bform.save()
return HttpResponseRedirect('formulaire_traite')
context = {
"Bform" : Bform,
}
return render(request, 'birthform.html', context)
ありがとうございました!
EDIT:
私はアイデンティティアプリから私のmodels.pyファイルを追加します。
class Identity(models.Model):
title = models.CharField(max_length=12,choices=TITLE_CHOICES, verbose_name='Civilité')
lastname = models.CharField(max_length=30, verbose_name='Nom de famille')
firstname = models.CharField(max_length=30, verbose_name='Prénom(s)')
sex = models.CharField(max_length=1, choices=SEX_CHOICES, verbose_name='sexe')
birthday = models.DateField(verbose_name='Date de naissance')
birthcity = models.CharField(max_length=30, verbose_name='Ville de naissance')
birthcountry = models.ForeignKey(Country, related_name='Pays_naissance', verbose_name='Pays de Naissance')
nationality = models.CharField(max_length=30, verbose_name='Nationalité')
job = models.CharField(max_length=30, verbose_name='Profession')
adress = models.CharField(max_length=30, verbose_name='Adresse')
city = models.CharField(max_length=30, verbose_name='Ville')
zip = models.IntegerField(verbose_name='Code Postal')
country = models.ForeignKey(Country, related_name='Pays1', verbose_name='Pays')
mail = models.CharField(max_length=30, verbose_name='Email', blank=True)
phone = models.CharField(max_length=20, verbose_name='Téléphone', blank=True)
def __unicode__(self):
return '%s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s' % (self.id, self.title, self.lastname, self.firstname, self.sex, self.birthday, self.birthcity, self.birthcountry,
self.nationality, self.job, self.adress, self.city, self.zip, self.country, self.mail, self.phone)
とテンプレート:私のアイデンティティアプリケーション内
<!--DOCTYPE html -->
<html>
<body>
<h1 align="center"> Formulaire d'acte de naissance </h1>
<form method='POST' action=''> {% csrf_token %}
<h3> Partie contenant les informations de l'enfant</h3>
{{ Bform.as_ul}} <!-- Display child part formulary -->
{{ value|date:"%d/%m/%Y" }}
{{ value|time:"H:M" }}
<br></br>
<input type ="submit" value="Valider le formulaire" />
</form>
</body>
</html>
が、私は表示する必要がこの表のすべての要素。しかし、私はこのモデルから私のBirthCertificate Appにいくつかの要素を表示したいだけです)
アイデンティティモデルのコードを表示します。それから私はあなたを助けることができるかもしれません。 –
アイデンティティモデルのコードを追加しました。私のアイデンティティアプリケーションでは、正確に1つの精度だけを表示する必要があります。すべての要素を表示する必要があります。そのため、16 '%s'を作成しました – Deadpool
ソリューション1の場合、アイデアの 'unicode'メソッドを変更することができます他の場所。 – schwobaseggl