Django Admin面板中ContactForm模型无内容显示问题求助
问题分析与解决方法
核心错误:字段名不匹配
你代码里的关键问题出在views.py的字段赋值环节:你的ContactForm模型里存储名字的字段是vorname,但你在视图中错误地给contact.name赋值,导致vorname字段根本没有被填充数据。这就是为什么Admin面板能看到记录,但看不到具体输入内容的原因。
修正后的代码
方式一:使用create()直接创建并保存(更简洁规范)
def aboutme(request): if request.method == "POST": ContactForm.objects.create( vorname=request.POST["vorname"], email=request.POST["email"], nachricht=request.POST["nachricht"] ) return HttpResponse("<h1>Danke für deine Nachricht</h1>") return render(request, "aboutme.html")
方式二:修正字段名后手动赋值
def aboutme(request): if request.method == "POST": contact = ContactForm() # 把contact.name改为contact.vorname,匹配模型字段 contact.vorname = request.POST["vorname"] contact.email = request.POST["email"] contact.nachricht = request.POST["nachricht"] contact.save() return HttpResponse("<h1>Danke für deine Nachricht</h1>") return render(request, "aboutme.html")
额外检查项
确保你已经在admin.py中正确注册了模型,否则Admin面板无法显示数据:
from django.contrib import admin from .models import ContactForm admin.site.register(ContactForm)
你的HTML表单中输入框的name属性与模型字段完全匹配,这部分没有问题。修正字段赋值错误后,提交的数据就能正常在Admin面板显示了。
内容的提问来源于stack exchange,提问作者PaladinNoGames 1702
相关产品推荐
相关产品推荐

