Setting up pyenv and show default value on confirm add (#7)

Co-authored-by: Thu Trang Pham <thu@joinmodernhealth.com>
This commit is contained in:
Thu Trang Pham
2021-02-09 17:03:18 -08:00
committed by GitHub
parent 591aa48ba0
commit 209de62c9d
17 changed files with 219 additions and 23 deletions
+5 -3
View File
@@ -134,14 +134,16 @@ class AdminConfirmMixin:
changed_data = {}
if form_validated:
if add:
for name in form.changed_data:
for name in form.cleaned_data:
new_value = getattr(new_object, name)
# Don't consider default values as changed for adding
default_value = model._meta.get_field(name).get_default()
if (
new_value is not None
and new_value != model._meta.get_field(name).default
and new_value != default_value
):
changed_data[name] = [None, new_value]
# Show what the default value is
changed_data[name] = [str(default_value), new_value]
else:
# Parse the changed data - Note that using form.changed_data would not work because initial is not set
for name, field in form.fields.items():
+17 -9
View File
@@ -1,11 +1,19 @@
{% if changed_data %}
<div class="changed-data">
<p><b>Confirm Values:</b></p>
<table>
<tr><th>Field</th><th>Current Value</th><th>New Value</th></tr>
{% for field, values in changed_data.items %}
<tr><td>{{ field }}</td><td>{{ values.0 }}</td><td>{{ values.1 }}</td></tr>
{% endfor %}
</table>
</div>
<div class="changed-data">
<p><b>Confirm Values:</b></p>
<table>
<tr>
<th>Field</th>
<th>{% if add %} Default {% else %} Current {% endif %}Value</th>
<th>New Value</th>
</tr>
{% for field, values in changed_data.items %}
<tr>
<td>{{ field }}</td>
<td>{{ values.0 }}</td>
<td>{{ values.1 }}</td>
</tr>
{% endfor %}
</table>
</div>
{% endif %}