在 Django 开发中,表单和模板是构建用户交互的核心工具。掌握它们能让你更高效地实现数据收集和页面渲染功能!
📌 1. 表单基础操作
创建表单类
使用forms.Form
或forms.ModelForm
定义表单结构
✅ 示例:from django import forms class ContactForm(forms.Form): name = forms.CharField(max_length=100) email = forms.EmailField()
模板渲染
在 HTML 中通过{{ form.as_p }}
或{{ form.as_table }}
渲染表单
📁 模板代码片段:<form method="post"> {% csrf_token %} {{ form.name.label_tag }} {{ form.name }} {{ form.email.label_tag }} {{ form.email }} <button type="submit">提交</button> </form>
处理表单数据
在视图中校验数据并保存:if request.method == 'POST': form = ContactForm(request.POST) if form.is_valid(): form.save()
📈 2. 表单与模板最佳实践
技巧 | 说明 |
---|---|
用 {{ form.non_field_errors }} |
显示通用错误信息 |
自定义字段样式 | 通过 widgets 参数设置 |
动态表单渲染 | 使用 for loop 遍历字段 |
🛑 常见问题排查
- 表单未显示:检查模板中是否正确调用
form.as_p
等方法 - 数据校验失败:确保字段类型与数据库模型匹配
- 模板变量错误:使用
{{ form.name.value }}
获取输入值
🔗 想了解更多 Django 视图实现细节?点击这里查看相关教程