Я новичок в кодировании, и я пытаюсь использовать свое первое приложение Django.Как вставить данные в две разные модели?
На этот раз у меня есть три разные модели, но с одним form
на момент, когда я ударил Save
Я хочу сохранить данные на этой модели модели и в других моделях 2.
Итак, на моем дисплее я хочу зациклировать две другие модели, чтобы показать, что у меня есть.
Возможно ли это?
models.py
class Personame(models.Model):
name = models.CharField(max_length=128)
def __str__(self):
return self.name
class Personlastname(models.Model):
last_name = models.CharField(max_length=128)
def __str__(self):
return self.last_name
class Personinfo(models.Model):
personame = models.CharField(max_length=128)
personlastname = models.CharField(max_length=128)
address = models.TextField()
phone_number = models.CharField(max_length=128)
hobbies =models.CharField(max_length=128)
def __str__(self):
return self.personame
forms.py:
class personform(forms.ModelForm):
personame = forms.CharField(label = "Name")
personlastname = forms.CharField(label = "Last Name")
class Meta:
model = Personinfo
fields = ["personame","personlastname","address","phone_number","hobbies"]
views.py:
def index(request):
queryset = Personame.objects.all()
queryset2 = Personlastname.objects.all()
qs = chain(queryset,queryset2)
form = personform(request.POST or None)
context = {
"qs": qs,
"form":form,
}
if form.is_valid():
instance = form.save()
return render(request, "index.html", context)
index.html:
<form method="POST" action="">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Save!" />
</form>
<table >
<tr>
<th>Name</th>
<th>Last Name</th>
</tr>
{% for item in qs %}
<tr>
<td>{{ item.name }}</td>
<td>{{ item.last_name }}</td>
</tr>
{% endfor %}
</table>
В принципе я хочу сэкономить name
в Personinfo
и Personame
, и я хочу сэкономить last_name
в Personinfo
и Personlastname
. Поэтому я могу показать Personame
и Personlastname
в шаблоне.
Может ли кто-нибудь мне помочь?
Я был бы очень рад за вашу помощь ... Благодаря
мне нужно 3 модели Diferent , один для формы, а остальные - в шаблонах. Вот почему я хочу вставлять несколько таблиц из одной формы. – User100696