views.py
def testModelForm(request):
if request.method == 'POST':
form = forms.ModelFormTest1(request.POST)
if form.is_valid():
models.Cell_msg.objects.create(**form.cleaned_data)
cell = models.Cell_msg.objects.get(**form.cleaned_data)
print(cell.cell_id)
# form.save()这里不适合用
return HttpResponseRedirect('/send_successfully/')
else:
form = forms.ModelFormTest1()
message = ''
# form = forms.ModelFormTest1()
return render(request, 'testmodelform.html',locals())
models.py
class Cell_msg(models.Model):
# module = models.ForeignKey(Module_msg, default=None, on_delete=models.CASCADE, related_name = 'cell')
cell_id = models.CharField(max_length=50, default='',verbose_name='c_id')
Ah = models.PositiveIntegerField(default=None,verbose_name='Ah')
Volt = models.PositiveIntegerField(default=None,verbose_name='Volt')
def __unicode__(self):
return self.cell_id
admin.py
class Cell_msg_Admin(admin.ModelAdmin):
list_display = ('cell_id','Ah','Volt',)
admin.site.register(Cell_msg, Cell_msg_Admin)
forms.py
class ModelFormTest1(forms.ModelForm):
class Meta:
model = models.Cell_msg
fields = ['cell_id', 'Ah', 'Volt']
# exclude = ['module']
labels = {
# 'module':'模组条码',
'cell_id':'电芯条码',
'Ah':'容量/Ah',
'Volt':'电压/mV',
}
testmodelform.html
<body>
<h3>录入与显示</h3>
<div class = 'load_and_display'>
<form name = 'load_and_display' action ='/' method='POST'>
{% csrf_token %}
<table>
{{form.as_table}}
</table>
<input type='submit' value='录入'>
</form>
</div>
<p>
ID: {{ cell_id }}<br>
容量: {{ cell_Ah }}<br>
电压: {{ cell_Volt }}<br>
调试信息 {{message}}<br>
</p>
<br>
</body>
</html>