У меня в основном бэкэнд-программа написана на Perl. Эта программа передает некоторые настройки на сетевое устройство. Это дает много информации, и я хочу, чтобы пользователи могли видеть программу во время ее работы. До сих пор это было легко, так как я работал с терминала.
Сейчас я пытаюсь написать приложение для Django. По сути, я хочу, чтобы пользователь нажал «Отправить», браузер перенес их на новую страницу, и на этой новой странице я хочу, чтобы пользователь видел текстовый вывод этой программы во время ее работы.
Мне удалось запустить программу в фоновом режиме, используя:
http://docs.python.org/library/subprocess.html
Скажите, что ниже простой запрос. На веб-странице ответа я хочу видеть результаты работы программы в режиме реального времени или, по крайней мере, обновлять ее, чтобы видеть последние выходные данные каждые несколько секунд (на данный момент это может быть работа)
def config(request):
builder_Config_list = Config.objects.all().order_by('-generated_date')[:100]
if 'hostname' in request.POST and request.POST['hostname']:
hostname = request.POST['hostname']
command = "path/to/builder.pl --router " + hostname
result = subprocess.Popen(command.split(), stdout=subprocess.PIPE)
return render_to_response('config/config.html', {'result':result, } )