Существует ли набор запросов для сравнения id двух разных моделей, и если id совпадает, я хочу автоматически заполнить html-форму?
Я хочу автозаполнить одну форму, когда я ввожу Id, то данные, связанные с этим Id, автоматически заполняются в HTML форме, такие как имя, адрес, пол, электронная почта, изображения и т.д.
Я не вижу никаких ошибок, но код не работает, как ожидалось
И модель выплаты зарплаты, и модель регистрации персонала относятся к разным приложениям
Когда я регистрирую сотрудника, его id и другие данные сохраняются в базе данных с их уникальным Id, и когда я назначаю сотруднику зарплату, я хочу автоматически заполнять HTML форму, когда я ввожу id конкретного сотрудника.
Если оба регистрационных идентификатора сотрудников равны идентификатору, который мы ввели в форму выплаты зарплаты, то данные, связанные с этим идентификатором, автозаполняются в HTML-форме, где пользователь может видеть
Это моя модель выплаты зарплаты:-
class SalaryPayment(models.Model):
Staff_id = models.UUIDField(primary_key=True)
Staff_Image = models.ImageField(null = True,blank = True)
Staff_Name = models.CharField(max_length=256)
Staff_Address = models.CharField(max_length=256)
Staff_Phone = models.CharField(max_length=15)
Staff_Profession = models.CharField(max_length=256)
Gender = models.CharField(max_length=15)
Citizen_Ship_No = models.CharField(max_length=150)
Staff_Basic_Salary = models.DecimalField(max_digits=10,decimal_places=2)
Staff_Extra_Income = models.DecimalField(max_digits=10,decimal_places=2)
Total = models.DecimalField(max_digits=20,decimal_places=2,default=0.00)
slug = models.SlugField(unique=True,allow_unicode=True)
Это моя модель регистрации персонала:-
class StaffRegistration(models.Model):
Staff_id = models.UUIDField(primary_key=True,default=uuid.uuid4)
Staff_Image = models.ImageField(blank = True,null = True)
Name = models.CharField(max_length=250,null=False)
Address = models.CharField(max_length=250,null=False)
Email = models.EmailField(unique=True)
phone = models.CharField(null = False,blank = False,unique = True,max_length=150)
Join_Date = models.DateTimeField(auto_now_add=True,blank=False)
profession = models.CharField(max_length=255,blank=False,default='Teacher')
Citizen_ship_No = models.CharField(max_length=150,unique=True,blank=True,null=True)
Gender = models.CharField(default='Male',choices=user_sex,max_length=150)
Это представление, в котором я написал набор запросов для автоматического заполнения полей HTML:-
from django.urls import reverse_lazy
from registration.models import StaffRegistration
from django.views import generic
from django.contrib.auth.mixins import LoginRequiredMixin,PermissionRequiredMixin
class SalaryEnter(generic.CreateView,generic.ListView,LoginRequiredMixin,PermissionRequiredMixin):
form_class = SalaryPaymentForm
model = SalaryPayment
template_name = 'payment/salary.html'
success_url = reverse_lazy('payments:salist')
def get(self,request,*args,**Kwargs):
entered = self.request.GET.get('SID','')
if entered == StaffRegistration.Staff_id:
self.result = StaffRegistration.objects.all()
else:
self.result = StaffRegistration.objects.none()
return super().get(request,*args,**Kwargs)
def get_context_data(self,**kwargs):
return super().get_context_data(results = self.result,**kwargs)