gpt4 book ai didi

python - 根据值在 Admin 中自定义 Django 表单字段

转载 作者:太空宇宙 更新时间:2023-11-03 19:33:07 25 4
gpt4 key购买 nike

如何根据表单字段的值在 Django 管理中自定义表单的显示?例如,我有一个默认值为“0”的字段。如果该字段已设置为非零值,我想在表单上显示一个附加的“编辑”链接,该链接将链接到一个单独的页面,允许编辑与相关模型相关的其他字段。我找到了如何自定义管理员的表单模板,但找不到如何访问表单字段的实际值以便在模板中添加 if/else 语句。

我尝试挖掘源代码,并将我的字段实例跟踪到 django.contrib.admin.AdminField.field->django.forms.BoundField但显示 BoundField 的字段和数据属性不会显示默认表单字段小部件标记中存储的值。如何访问模板内特定字段的数据值,以便我可以执行如下操作?

{% for fieldset in inline_admin_form %}
{% for line in fieldset %}
{% for field in line %}
{{field.field}} {% if field.field.value != 0 %}<a href="/some/path/to/model/{{field.value}}">Edit</a>{% endif %}
{% endfor %}
{% endfor %}
{% endfor %}

最佳答案

刚刚在 shell session 中输入随机变量 (ipython ftw) 并发现了这个:

boundfield.data = data
boundfield.field.initial = initial

{% for field in form %}
{% if field.data != field.field.initial %}Not Initial{% endif %}
{% endfor %}

试一试!

关于python - 根据值在 Admin 中自定义 Django 表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4796331/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com