Как вставить данные в один и тот же идентификатор таблицы с помощью Javascript Clone Code?

Я пытаюсь что-то сделать с django и мне нужно клонировать элементы формы. Я нашел некоторый код, он работает, но он вставляет разные id таблицы. Я хочу клонировать два поля формы с помощью кода js clone. Он клонирует и затем публикует поля, когда я смотрю в базу данных, я вижу, что два поля вставлены с разными id. Как я могу это исправить?

Когда вы смотрите на изображение базы данных, вы видите одинаковые номера, но разные идентификаторы. Как я могу вставить данные в один и тот же идентификатор с двумя полями формы.

Это create_normal.html

enter image description here

Вот база данных

enter image description here

Вот мои коды.

models.py

from django.db import models
from django.contrib.auth.models import User

# Create your models here.





class PatientBilgi(models.Model):
    
    name = models.CharField(max_length=155)
    surname = models.CharField(max_length=155)

    def __str__(self):
        return self.name


class PatientAliskanlik(models.Model):
    
    sigara = models.CharField(max_length=155)
    alkol = models.CharField(max_length=155)

    def __str__(self):
        return self.sigara



class Patient(models.Model):
    name = models.CharField(max_length=155)
    pbilgi = models.ForeignKey(PatientBilgi, on_delete=models.CASCADE, blank=True, null=True)
    palis = models.ForeignKey(PatientAliskanlik, on_delete=models.CASCADE, blank=True, null=True)

    
    def __int__(self):
        return self.name  

forms.py

from django import forms
from .models import  Patient, PatientBilgi, PatientAliskanlik
from django.forms import (formset_factory, modelformset_factory)



class PatientForm(forms.ModelForm):
    class Meta: 
        model = Patient
        fields = ['name']



class PatientBilgiForm(forms.ModelForm):
    class Meta: 
        model = PatientBilgi
        fields = ['name', 'surname']



class PatientAliskanlikForm(forms.ModelForm):
    class Meta: 
        model = PatientAliskanlik
        fields = ['sigara', 'alkol']        



###### Formsets


class PatientBilgiModelForm(forms.ModelForm):

    class Meta:
        model = PatientBilgi
        fields = ('name', 'surname' )
        labels = {
            'name': 'Patient Name',
            'surname': 'Patient  Surname'
        }
        widgets = {
            'name': forms.TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Enter Patient Name and Surname here'
                }
            )
        }


PatientBilgiFormset = formset_factory(PatientBilgiForm)
BookModelFormset = modelformset_factory(
    PatientBilgi,
    fields=('name', 'surname', ),
    extra=1,
    widgets={
        'name': forms.TextInput(attrs={
            'class': 'form-control',
            'placeholder': 'Enter Patient Name here'
            }
        ),
        'surname': forms.TextInput(attrs={
            'class': 'form-control',
            'placeholder': 'Enter Patient Surname here'
            }
        )
    }
)



PatientFormset = modelformset_factory(
    Patient,
    fields=('name', ),
    extra=1,
    widgets={'name': forms.TextInput(attrs={
            'class': 'form-control',
            'placeholder': 'Enter Author Name here'
        })
    }
)
 

views.py

from django.shortcuts import render, redirect 
from django.urls import reverse
from .models import Patient, PatientBilgi, PatientAliskanlik
from .forms import PatientForm, PatientBilgiForm, PatientAliskanlikForm, PatientBilgiFormset, PatientBilgiModelForm, PatientFormset
from formtools.wizard.views import SessionWizardView

# Create your views here.

def home(request):
    return render(request, 'home.html')



def hasta_listele(request):
    data =  Patient.objects.all()
    return render(request, 'deneme.html', {'data': data})


def hasta_detay(request, id):
    kata = Patient.objects.get(id=id)
    kata1 = PatientBilgi.objects.get(id=id)
    kata2 = PatientAliskanlik.objects.get(id=id)

    return render(request, 'hasta_detay.html', 
    context = {
    'kata': kata, 
    'kata1': kata1,
    'kata2': kata2}
    )


# Multi Step Form Submission

class multistepformsubmission(SessionWizardView):
    template_name = 'hasta_kayit.html'
    form_list = [PatientBilgiForm, PatientAliskanlikForm, PatientForm]

    def done(self, form_list, **kwargs):
        form_data = [form.cleaned_data for form in form_list]
        

        patientdata = PatientBilgi(name = form_data[0]['name'], surname = form_data[0]['surname'])
        patientdata.save() 

        patientdata1 = PatientAliskanlik(sigara = form_data[1]['sigara'], alkol = form_data[1]['alkol'])
        patientdata1.save() 

        patientdata2 = Patient(name = form_data[2]['name'] )
        patientdata2.save()
       

        data = Patient.objects.all()
        data1 = PatientBilgi.objects.all()
        data2 = PatientAliskanlik.objects.all() 

        return render(self.request, 'done.html', context={
            'data': data,
            'data1': data1,
            'data2': data2
            
            
            })

######## Deneme Amaçlı Fonksiyon, gereği yok....

def deneme(request):
    a = Patient.objects.all()
    return render(request, "a.html", {'a': a })

##################

########## Formset Fonskiyonu


def create_book_normal(request):
    template_name = 'create_normal.html'
    
    if request.method == 'GET':
        formset = PatientBilgiFormset(request.GET or None)
    elif request.method == 'POST':
        formset = PatientBilgiFormset(request.POST)
        if formset.is_valid():
            for form in formset:
                name = form.cleaned_data.get('name')
                surname = form.cleaned_data.get('surname')
                # save book instance
                if name:
                    PatientBilgi(name=name).save()
                    PatientBilgi(surname=surname).save()
            return redirect('done')

    return render(request, template_name, {
        'formset': formset,
        
    })



def done1(request):
    return render(request, 'done.html')

create_normal.html

Я нашел другой способ, где не нужен javascript. На самом деле я хочу сделать несколько форм и каждая дата должна принадлежать одному регистру. А иногда один регистр может принадлежать нескольким данным. После всех поисков я нашел другой способ реализовать свой проект. Я сделал модель с первичным ключом, а затем я дал foreignkey и onetonefield другим моделям. Все решилось. Вот полный код проекта: https://github.com/eseymenler/demo2

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