python - 如何在 Django 下拉 HTML 表单中编辑数据?
问题描述
我有一个表单,我正在编辑单个潜在客户数据,我使用 Django 默认管理面板提交数据。但现在我正在我的默认表单上编辑数据。所以我担心的是,如果我编辑任何潜在客户,则应在数据库中可用的下拉列表中选择默认值,如果我想更改下拉列表值,则可以从下拉列表中选择它。
这是我的Models.py
文件
class Leads(models.Model):
SOURCE = (
('Facebook', 'Facebook'),
('Website', 'Website'),
('PPC', 'PPC'),
('Reference', 'Reference'),
('Other Source', 'Other Source')
)
name = models.CharField(max_length=50, default=None)
email = models.EmailField(max_length=50, null=True, blank=True)
phone = models.CharField(max_length=10, default=None)
source = models.CharField(choices=SOURCE, default=2, max_length=100)
这是我的urls.py
文件
path(r'^leads/<int:id>/change',views.leads_edit, name="leads_edit"),
这是我的views.py
文件...
def leads_edit(request, id):
leads = Leads.objects.get(id=id)
context = {'leads':leads}
template_name = 'file/edit.html'
return render(request, template_name, context)
这是我的edit.html
文件,我在哪里尝试使用下拉字段进行编辑...
{% for obj in leads.SOURCE %}
<option value="{{ leads.source }}">{{ obj}}</option>
{% endfor %}
请检查我的代码,让我知道如何显示数据库中的选定字段,以及如何在下拉列表中显示其余其他字段。因为我可以更改下拉字段。
解决方案
请试试这个,希望对你有帮助...
{% for id, obj in leads.SOURCE %}
<option value="{{ id }}"{% if leads.source == id %} selected="selected"{% endif %}>{{ obj }}</option>
{% endfor %}
推荐阅读
- javascript - 扩展此二和算法的工作原理
- amazon-web-services - aws_shield_protection Terraform
- python - 删除N行文件
- mysql - 将字符串布尔值隐式转换为整数失败
- haskell - 使用模式匹配重载函数?
- mysql - 如何返回 GROUP_CONCAT 输出的 mysql JSON 数组?
- android - 是状态
仅针对 Android 中的 @Composable 设计? - sql - 如何在 SQL Server 中执行 SELECT * 以同时获取具有表名和字段的别名
- bash - 将设备挂载到存储在变量中的挂载点
- javascript - 向对象添加属性数组