Striver, спасибо за помощь, хотя вопрос был немного в другом, навели на мысль как сделать “в лоб”. Оставляю это тут это для будущих нубов: “Как запустить питоновский скрипт, который не рендерит страницу, а просто выполняет определенную функцию (на примере гиперссылки из админки)”.
Добавляем в файл /admin/index.html:
<a style="display: block;" href="/admin/generate_yml/">Обновить Yandex.xml</a>
Добавляем в файл /app/viewes.py:
url(r'^admin/generate_yml/', views.generate_yml, name='generate_yml'),
Добавляем в файл /app/views.py:
def generate_yml(self):
from app.management.commands.create_yml_helper import generate_yml
from django.http import HttpResponse
generate_yml()
return HttpResponse("Yandex price created Successfully!")
Создаем запускаемый файл create_yml_helper ( в моем случае путь app/management/commands) такого содержания:
import os
# Файл на Python запускает команду оболочки Linux
def generate_yml(self):
try:
command = 'YOUR_OWN_PATH/venv/bin/python YOUR_OWN_PATH/manage.py create_yml > your_own_path/yml/market.xml' # Тут м.б. любая команда
os.system(command)
except:
print('Ошибка генерации Ya Xml')
Да, сделано сильно через одно место, но работает