django将所有记录保存在for循环中

时间:2019-11-08 09:27:34

标签: django

enter image description here

这是图片中的代码

  {% for schedule in sched %}
<tr>
<td></td>
<td>{{schedule.Remark}}</td>
<td>Php {{ schedule.Amount|floatformat:2}}</td>
<td> </td>
</tr>
{% endfor %}

这是将记录插入数据库的代码

 id = request.POST.get('ids')
    educlevel = request.POST.get('gradelevel')

studentname = StudentProfile(id=id)
educationlevel = EducationLevel(id=educlevel)

id = request.POST.get('payments')
payment = PaymentType(id=id)

sc = request.POST.get('schoolyear')
schoolyear = SchoolYear(id=sc)
V_insert_data = StudentsEnrollmentRecord(
        Student_Users=studentname, Payment_Type=payment,
        Education_Levels=educationlevel,School_Year=schoolyear
    )
V_insert_data.save()
for file in request.FILES.getlist('myfile'):
    StudentsSubmittedDocument.objects.create(
        Students_Enrollment_Records=V_insert_data,
        Document=file
    )
insert_StudentsPaymentSchedule = StudentsPaymentSchedule(
        Students_Enrollment_Records =  V_insert_data,
        #Amount = ScheduleOfPayment.Amount,
        Remarks = ScheduleOfPayment.Remark
    )
insert_StudentsPaymentSchedule.save()

这是models.py

class ScheduleOfPayment(models.Model):
    Pending_Request = [
       ('Active', 'Active'),
       ('Inactive', 'Inactive'),
    ]
    Education_Levels = models.ForeignKey(EducationLevel, related_name='+', on_delete=models.CASCADE, blank=True, null=True)
    Courses = models.ForeignKey(Course, related_name='+', on_delete=models.CASCADE,blank=True, null=True)
    Payment_Type = models.ForeignKey(PaymentType, related_name='+', on_delete=models.CASCADE, blank=True, null=True)
    Display_Sequence = models.IntegerField(blank=True, null=True)
    Date = models.DateField(null=True,blank=True)
    Amount = models.FloatField(null=True, blank=True)
    Remark = models.CharField(max_length=500,blank=True, null=True)

这是我要保存显示的所有记录的地方

class StudentsPaymentSchedule(models.Model):
    Students_Enrollment_Records=models.ForeignKey(StudentsEnrollmentRecord, related_name='+', on_delete=models.CASCADE,null=True)
    Payment_Schedule = models.DateField(null=True,blank=True)
    Amount = models.FloatField(null=True,blank=True)
    Remarks=models.TextField(max_length=500,null=True,blank=True)

这是问题,只有1条记录保存在数据库StudentPaymentSchedule中,我只想保存数据库ScheduleOfPayment中的所有付款时间表和金额并将其自动过帐到StudentsPaymentSchedule

我不知道这是什么意思

django.db.models.query_utils.DeferredAttribute对象位于0x7fb81fd32048

enter image description here

更新

我从自己的观点尝试了此代码

teachers = ScheduleOfPayment.objects.filter(Payment_Type=StudentsEnrollmentRecord.Payment_Type, Education_Levels = StudentsEnrollmentRecord.Education_Levels)
    for each in teachers:
      insert_StudentsPaymentSchedule = StudentsPaymentSchedule(
              Students_Enrollment_Records =  V_insert_data,
              #Amount = ScheduleOfPayment.Amount,
              Remarks = each
          )
      insert_StudentsPaymentSchedule.save()

我收到此错误

enter image description here

0 个答案:

没有答案