我想要做的是我的表单中的一些字段将根据以前的值自动添加。让我告诉你我的例子:
我的模特
class Measurement(models.Model):
group = models.CharField(max_length=250)
subgroup = models.CharField(max_length=250)
number=models.PositiveIntegerField(default=1)
voltage= models.PositiveIntegerField()
comment = models.TextField(default='no comment')
created = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.group
forms.py
class MeasurementForm(forms.ModelForm):
class Meta:
model = Measurement
fields = ['group','subgroup','number','voltage','comment']
我的views.py
def measurement(request):
if request.method == "POST":
form = MeasurementForm(request.POST, request.FILES)
if form.is_valid():
measurement = form.save(commit=False)
measurement.save()
return redirect('data:measurement')
else:
form = MeasurementForm()
context = {'form': form,}
template = 'data/measurement.html'
return render(request, template, context)
html.file
<div class="panel panel-primary">
<div class="panel-heading">
<h4>Add a measurement</h4>
</div>
<div class="panel-body">
<form method='POST' enctype="multipart/form-data">
{% csrf_token %}
{{ form|crispy }}
<button type = 'submit' class="btn btn-success">Save</button>
</form>
</div>
</div>
我想要的是根据我之前输入的内容自动生成的字段group
,subgroup
和number
。
例如,我输入第一个测量值:
小组:House
小组:Light
小数:1
电压:10
评论:No comment
点击保存后,我希望字段Group
,Subgroup
和Number
已经拥有以下信息:
小组:House
小组:Light
小数:2
电压:12
评论:No comment
下一个:
小组:House
小组:Light
小数:3
电压:15
评论:No comment
为了只添加我的测量并节省时间。但是,这并不意味着我无法更改Group
,Subgroup
或Number
字段。