Как создать несколько сотрудников Experince в django

Как создать несколько экспериментов в Django

Это код файла Model.py Files

from django.db import models

# Create your models here.
class Detail(models.Model):
    first_name = models.CharField(max_length=96)
    last_name = models.CharField(max_length=96)
    email_id = models.CharField(max_length=96)
    mobile_no = models.CharField(max_length=96)
    dob = models.CharField(max_length=96)
    qualification = models.CharField(max_length=96)
    

    def __str__(self):
        return self.first_name

class Experince(models.Model):
    detail = models.ForeignKey(Detail, on_delete = models.CASCADE)
    organization = models.CharField(max_length=96)
    designation = models.CharField(max_length=96)
    date_from = models.CharField(max_length=96)
    date_to = models.CharField(max_length=96)

    def __str__(self):
        return self.organization

Это код файла View.py:

from django.shortcuts import render
from .models import *
#from .forms import *

# Create your views here.



def home(request, id):
    if request.method == 'POST':
        Detail(first_name = request.POST['first_name'],
        last_name = request.POST['last_name'],
        email_id = request.POST['email_id'],
        mobile_no = request.POST['mobile_no'],
        dob = request.POST['dob'],
        qualification = request.POST['qualification']).save()
        Experince(organization = request.POST['organization'],
        designation = request.POST['designation'],
        date_from = request.POST['date_from'],
        date_to = request.POST['date_to']).save()
    
        
    return render(request,"home.html")

Это моя html страница:

У меня есть модель Experince с внешней реализацией к модели Detail. Мне нужно создать несколько Experince с помощью модели Experince. Скажем, если счетчик равен 3, то он должен сохранить 3 Experince в базе данных.

Мне кажется, что здесь многое не так. Если я правильно понял, у вас есть пользователи, которые могут иметь несколько опытов? Если это так, то пользователь является главной моделью, а опыт - детальной моделью, и отношение должно быть обратным (опыт имеет отношение к модели пользователя). Есть и другие возможности, но это самая простая.

Так, вы не используете шаблонизацию django в полной мере. Нет необходимости назначать все эти поля в представлениях, большая часть этого может быть выполнена напрямую.

В конечном итоге, если вы хотите добавить в шаблон несколько экземпляров детальной модели (опыта) на одной странице, вам, вероятно, стоит обратить внимание на наборы форм, которые могут легко осуществить это.

Надеюсь, это поможет.

Вернуться на верх