Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在不影响django中models.py的情况下更改模板标记中表单的名称_Python_Django - Fatal编程技术网

Python 在不影响django中models.py的情况下更改模板标记中表单的名称

Python 在不影响django中models.py的情况下更改模板标记中表单的名称,python,django,Python,Django,您好,我想在django中呈现表单时更改模板中的名称 仅当我在models.py中进行了更改时,我才能在模板中更改它,但我想知道是否有任何方法可以在不影响models.py的情况下更改特定表单字段的名称 只有当我更改了models.py时,我才能更改表单字段的渲染方式,但每当我这样做时,我都会收到一个错误消息 no such table: login_record class Record(models.Model): choice1 = (('O Positive', 'O Posi

您好,我想在django中呈现表单时更改模板中的名称 仅当我在models.py中进行了更改时,我才能在模板中更改它,但我想知道是否有任何方法可以在不影响models.py的情况下更改特定表单字段的名称

只有当我更改了models.py时,我才能更改表单字段的渲染方式,但每当我这样做时,我都会收到一个错误消息

no such table: login_record

class Record(models.Model):
    choice1 = (('O Positive', 'O Positive'),
               ('O Negative', 'O Negative'),
               ('A Positive', 'A Positive'),
               ('A Negative', 'A Negative'),
               ('B Positive', 'B Positive'),
               ('B Negative', 'B Negative'),
               ('AB Negative', 'AB Negative'),
               ('AB Positive', 'AB Positive'),
               )
    blood_TYPE = models.CharField(max_length=20, choices=choice1, default='O Positive')
    staff = models.CharField(max_length=20, default=' ')
    id_no = models.CharField(max_length=20, default=' ')
    donar_name = models.CharField(max_length=30)
    units = models.FloatField(default=0, validators=[MinValueValidator(0)])
    date = models.DateField()

    class Meta:
        ordering = ['-date']
    def __str__(self):
        return self.id_no
这是我的模特

class DonateForm(forms.ModelForm):
    choice1 = (('O Positive', 'O Positive'),
               ('O Negative', 'O Negative'),
               ('A Positive', 'A Positive'),
               ('A Negative', 'A Negative'),
               ('B Positive', 'B Positive'),
               ('B Negative', 'B Negative'),
               ('AB Negative','AB Negative'),
               ('AB Positive','AB Positive'),
               )
    blood_group = forms.ChoiceField(choices=choice1, initial='O Positive')

    class Meta:
        model = Record
        fields = ('donar_name', 'id_no', 'blood_group', 'units', 'date')
这是我的表格

@login_required(login_url='/register/login/')
def donate(request):
    error = []
    if request.method == 'POST':
        record = Record()
        record.blood_TYPE = request.POST['blood_group']
        record.staff = request.user.username
        record.donar_name = str(request.POST['donor_name']).title()
        record.id_no = str(request.POST['id_no']).upper()
        if DonarDetail.objects.all().filter(id_no=str(request.POST['id_no']).upper()):
            if DonarDetail.objects.all().filter(
                    id_no=str(request.POST['id_no']).upper(),
                    blood_group=record.blood_TYPE,
            ):
                if DonarDetail.objects.all().filter(
                        id_no=str(request.POST['id_no']).upper(),
                        blood_group=record.blood_TYPE,
                        number_month__gt=2,
                        ) | DonarDetail.objects.all().filter(
                        id_no=str(request.POST['id_no']).upper(),
                        blood_group=record.blood_TYPE,
                        number_month=-1,
                        ):
                    print('ok')
                else:
                    error.append('donar not eligible')
            else:
                error.append('blood does not match donnar ')
        else:
            error.append('donar not available ')
        if len(error) == 0:
            record.units = request.POST['units']
            record.date = request.POST['date']
            record.save()
        else:
            form = DonateForm()
            return render(request, 'login/donate.html', {'form': form, 'errors': error})
        a = DonarDetail.objects.get(id_no=str(request.POST['id_no']).upper())
        a.last_donated_date = request.POST['date']
        a.refresh()
        a.save()
        storage = BloodStorage()
        if BloodStorage.objects.all().filter(blood_group=request.POST['blood_group']):
            storage1 = BloodStorage.objects.get(blood_group=request.POST['blood_group'])
            storage1.units += float(request.POST['units'])
            storage1.save()
        else:
            storage.blood_group = request.POST['blood_group']
            storage.units = request.POST['units']
            storage.save()
        return HttpResponse('stored')
    else:
        error = []
        form = DonateForm()
        return render(request, 'login/donate.html', {'form': form, 'error': error})
在这里,每当我在我的models.py以及forms&views.py中将字段donar_name更改为donar_name时,我就能在模板中看到从donar name到donor name的更改 但是我仍然有一个错误,说没有这样的表:login\u记录。通过这样做,我想知道是否有任何地方可以修改表单的查看方式,而不影响我的模板中的模型

在这里,每当我在我的models.py以及forms&views.py中将字段donar_name更改为donar_name时,我就能在模板中看到从donar name到donor name的更改
但是我仍然有一个错误,说没有这样的表:login\u record通过这样做,我想知道是否有任何地方可以修改我的表单的查看方式,而不影响我的temoplates中的模型

   class Meta:
         model = Record      
         labels = {'donor_name':'Donor Name'}