Python 在不影响django中models.py的情况下更改模板标记中表单的名称
您好,我想在django中呈现表单时更改模板中的名称 仅当我在models.py中进行了更改时,我才能在模板中更改它,但我想知道是否有任何方法可以在不影响models.py的情况下更改特定表单字段的名称 只有当我更改了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
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'}