Как показано выше, после нажатия кнопки «Экспорт» только команда «Django 1» возвращается через команду print ().
Хотите узнать, как получитьвсе три значения из этого вида интерактива?
# admin.py
def export(self, request, queryset):
if "apply" in request.POST:
queryset.update(status="exported")
title = request.POST['title']
print(title, _selected_action)
self.message_user(request,
"Changed status on {} orders".format(queryset.count()))
return HttpResponseRedirect(request.get_full_path())
context = admin.site.each_context(request)
context.update({
'data': queryset
})
return render(request, 'admin/export.html', context=context)
export.short_description = "export"
<!-- export.html -->
{% extends "admin/base_site.html" %}
{% block content %}
<form action="" method="POST">
{% csrf_token %}
{% for d in data %}
<p>
{{ d.pk }}.{{ d }}
<input type="text" name="title" value={{ d.title }} size="50" autofocus />
</p>
<input type="hidden" name="_selected_action" value="{{ d.pk }}" />
{% endfor %}
<input type="hidden" name="action" value="export" />
<input type="submit" name="apply" value="Export" />
</form>
{% endblock %}