Чтобы добавить кнопку вызова функции парсинга в админке Django, вам нужно выполнить следующие шаги:
1. Создайте файл admin.py
в вашем Django приложении, если его еще нет.
2. Импортируйте необходимые модули и модели в файл admin.py
. Например, если ваше Django приложение называется myapp
, и у вас есть модель MyModel
, которую вы хотите парсить, импортируйте ее следующим образом:
from django.contrib import admin from .models import MyModel
3. Объявите класс MyModelAdmin
, наследующий от admin.ModelAdmin
. В этом классе вы определите дополнительные методы для добавления кнопки и обработки вызова функции парсинга.
class MyModelAdmin(admin.ModelAdmin): def parse_button(self, request, queryset): # Ваш код для функции парсинга pass parse_button.short_description = "Парсинг" # Название кнопки # Регистрация модели с классом администратора admin.site.register(MyModel, MyModelAdmin)
4. Чтобы добавить кнопку в админке, используйте атрибут actions
класса MyModelAdmin
. Присвойте этому атрибуту значение tuple, содержащую имя метода parse_button
.
class MyModelAdmin(admin.ModelAdmin): # ... actions = ['parse_button']
Обратите внимание, что имя метода должно быть в квадратных скобках или в списке, если вы хотите добавить несколько кнопок.
5. Если вы хотите, чтобы кнопка была доступна только для выбранных объектов в админке, переопределите атрибут actions_on_top
или actions_on_bottom
класса MyModelAdmin
на True
.
class MyModelAdmin(admin.ModelAdmin): # ... actions_on_top = True actions_on_bottom = False
6. Перезапустите ваше Django приложение, чтобы изменения вступили в силу. Теперь вы должны увидеть кнопку "Парсинг" рядом с выбранными объектами в админке Django.
Когда вы выбираете один или несколько объектов и нажимаете кнопку "Парсинг", вызывается метод parse_button
. В этом методе вы можете написать свой код для парсинга данных, используя выбранные объекты.