In the django admin panel, I want to mark entries with checkboxes and in Action dropdown there is a Print button that transfers information to the template. I want each marked entry to open in a separate template and in a new tab.
admin.py
@admin.register(Salary) class SalaryAdmin (admin.ModelAdmin): list_display = ('worker', 'salary_uah', 'dates') search_fields = ('worker', 'salary_uah', 'dates') list_filter = ('worker', 'date') actions = ['button'] def button(self, request, queryset): select = request.POST.getlist(admin.ACTION_CHECKBOX_NAME) for i in select: return '<a target="_blank" href="{}"></a>'.format(reverse('act', args=[i])) button.short_description = 'Print' button.allow_tags = True views.py
def acts (request, obj): if not request.user.is_authenticated(): return redirect('admin:login') salary = Salary.objects.get(id=obj) workers = Worker.objects.filter(id=salary.worker.pk).values() salary = Salary.objects.filter(id=obj).values() return render(request, 'zpapp/act.html', {'workers':workers, 'salary':salary } urls.py
urlpatterns = [ url(r'^$',home, name='home'), url(r'^add/$',add_worker, name='add'), url(r'^act/(?P<obj>[\w-]+)$',acts, name='act') Help solve this problem