Как создать ссылку Django Admin с предварительно выбранными объектами и предварительно заполненным действием?

Я пытаюсь сгенерировать ссылку, которая переводит пользователей на страницу Django Admin для определенной модели, с уже выбранными объектами и предварительно заполненным действием в выпадающем меню.

Вот что я пробовал до сих пор:

def get_admin_action_link(record, action):
    app_label = record._meta.app_label
    model = record._meta.model_name
    id = record.id
    env = f"{settings.env}.myurl.com" if settings.env else "http://localhost:8000"
    return f"{env}/admin/{app_label}/{model}?action={action}&_selected_action={id}"

Сгенерированная ссылка выглядит следующим образом:

http://localhost:8000/admin/app/mymodel?action=process&_selected_action=591

Однако, когда я нажимаю на ссылку, она приводит меня только к представлению списка изменений модели в админке. Объекты не выбраны, и действие не заполнено.

from django.urls import reverse
from urllib.parse import urlencode

def get_admin_action_link(record, action):
app_label = record._meta.app_label
model = record._meta.model_name
id = record.id


changelist_url = reverse(f"admin:{app_label}_{model}_changelist")

query_params = {
    "action": action,
    "_selected_action": id,
}

base_url = f"{settings.env}.myurl.com" if settings.env else 
"http://localhost:8000"

full_url = f"{base_url}{changelist_url}?{urlencode(query_params)}"

return full_url
Вернуться на верх