Как интегрировать существующие скрипты в Django? - PullRequest
1 голос
/ 06 апреля 2011

Я только что познакомился с фреймворком Django, и я хотел бы использовать этот фреймворк для многих моих системных сценариев Perl / Python / wlst для моей группы.Как я могу взять нормальный вывод командной строки и сделать так, чтобы он выводил браузер практически в реальном времени?Я посмотрел в сериализации, но я не могу найти хорошие учебники.Я просто ищу предложения о том, как сделать нормальный скрипт Python / Perl и заставить его работать с веб-сайтом на основе Django.

В частности: у меня есть скрипт, который добавит пользователя в группу к ролидля веблогического домена.Я хочу сделать так, чтобы вы заполняли форму, она подключалась к серверу, выполняла работу и возвращала вывод.Единственное, что для подключения может потребоваться немного времени.

Ответы [ 2 ]

1 голос
/ 06 апреля 2011

Вы хотите, чтобы результаты siplay внешнего скрипта в веб-браузере? Затем я предлагаю вам заставить эти сценарии записывать их результаты в базу данных, а затем использовать модели django для получения и отображения информации.

Если вы хотите выполнять скрипт каждый раз, когда пользователь открывает веб-страницу и отображает результат, используйте этот код Python:

def command_output(cmd):
    """ Capture a command's standard output."""
    import subprocess;
    return subprocess.Popen(cmd.split(), stdout=subprocess.PIPE).communicate()[0];

result = command_output('ls -al');
0 голосов
/ 06 апреля 2011

Я думаю, вы должны быть более конкретным.Если вы хотите вывести результаты «операции» в браузере, вы должны использовать view, который отображает шаблон.

И указывать документы django для представлений :

Функция представления, или сокращенное представление, - это просто функция Python, которая принимает веб-запрос и возвращает веб-ответ.Этот ответ может быть HTML-содержимым веб-страницы, или перенаправлением, или ошибкой 404, или документом XML, или изображением.,,или что-нибудь, действительно.Само представление содержит любую произвольную логику, необходимую для возврата этого ответа.Этот код может жить где угодно, если он находится на вашем пути Python.

Итак, если у вас есть работающая функция / скрипт Python, вы можете импортировать его в свое представление и направить результаты таким образом.на ваш шаблон.

...