Я написал небольшое веб-приложение, которое запускает ant (пакетный файл). Время обработки командного файла может занять до нескольких минут.
index.haml перечисляет все доступные файлы ant, и run.haml запускает их. Теперь он работает так: когда я щелкаю ссылку в index.haml, запускается скрипт ant, а после его завершения вся страница run.haml отправляется в браузер. Так что после нажатия на ссылку из index.haml я все еще вижу index.haml и ничего из run.haml
После того, как я нажму на ссылку из index.haml Я хочу
- показать, какой скрипт будет запущен, а затем
- запустить скрипт ant, а затем
- отобразить результаты этого.
Я был рекомендован в моем другом вопросе , чтобы использовать
Я не понимал, как отдельный рабочий поток может мне помочь. Будут ли результаты отложенного задания, которые фиксируются вызовом ruby, отправляться в браузер после завершения задания?
Я также не понял, как я могу использовать Аякс в синатре.
Может ли кто-нибудь указать мне, каким может быть решение для этого? Пожалуйста, обратите внимание, что я знаю немного рубина, выучил немного синатры и хамла вчера. В Ajax ничего нет :-) Я учусь на примерах ... и с удовольствием узнаю что-нибудь.
index.haml дает мне HTML как
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Available test suits</title>
</head>
<body>
<h1>Available test suits</h1>
<br/><br/>
<a href='run?run=login_build'>login_build</a>
<br />
<a href='run?run=login_cycle_build'>login_cycle_build</a>
<br />
<a href='run?run=login_cycle_academicyear_build'>login_cycle_academicyear_build</a>
</body>
</html>
run.haml выглядит как
!!!
%html
%head
%title Running
%body
= "Starting test suite: #{params['run']}"
- output = %x[cd C:\\Program Files\\TestPro\\TestPro Automation Framework410 && ant -lib lib -f "C:\\Program Files\\TestPro\\TestPro Automation Framework410\\Output Files\\builds\\#{params['run']}.xml"]
-#The result is
%br
= output.split("\n")[-2,2].join("<BR>")
= "<br/>"*2
%a(href="/")back to suits list