Django обновление нескольких объектов с помощью опций
Я хочу обновить одно и то же поле для множества объектов с одинаковым значением, предоставляя пользователю доступные варианты для данного поля в представлении, все это доступно из пользовательского действия.
Я застрял на получении значения, выбранного пользователем в представлении.
Я не хочу использовать пакет mass_edit.
Это будет пользовательское действие в modeladmin в admin.py:
def edit_selected(self, request, queryset, extra_context=None):
context = {}
labels = models.Label.objects.all()
crop_ids = []
for i in queryset.values():
crop_id = i.get('id')
crop_ids.append(crop_id)
context = {
"labels": labels,
"ids": crop_ids,
}
return render(request, template_name="bulk_edit.html",context=context )
мой шаблон в bulk_edit.html:
{% extends 'admin/base.html' %}
{% csrf_token %}
{% load spex_template %}
{% block content %}
{# {% if user.is_autheticated %}#}
<div class="row">
<div class="col-md-12">
<form method="get">
{{ filter.form.as_p1 }}
<select style="width:100px" name="label" placeholder="Add new Label" id="id_label__id">
<option value="none" selected disabled hidden>New Label</option>
{% for label in labels %}
<option value="{{ label.id }}">{{ label.id }} - {{label.name}}</option>
{% endfor %}
</select>
<button type="submit">Update</button>
<br>
</form>
<div class="card card-body">
<div><h1>Crop Ids:
{% for id in ids %}
{{ id }},
{% endfor %}
</h1></div>
<table class="table table-sm">
<tr>
</tr>
<br>
</table>
</div>
</div>
</div>
{# {% endif %}#}
{% endblock %}
Мне интересно, как я могу вернуть идентификатор метки и использовать метод de update для всех выбранных культур, или если у кого-то есть идея, как это сделать.