Я написал веб-форму, используя Sinatra и Haml, которые будут использоваться для вызова Ruby script.
Все кажется прекрасным, кроме одного: мне нужно передать аргумент в файл просмотра Haml из Sinatra/Ruby script.
Вот часть моего кода:
#!/usr/bin/env ruby
require 'rubygems'
require 'sinatra'
require 'haml'
get '/' do
haml :index
end
post '/' do
name = params[:name]
vlan = params[:vlan]
tmp = nil
tmp = %x[./wco-hosts.rb -a -n #{name} -v #{vlan}]
if tmp.include?("Error")
haml :fail
else
haml :success
end
end
Если script встречается с абортом, он возвращает строку, включающую слово "Ошибка". Если это произойдет, я вызываю файл Haml, который будет показывать страницу ошибок пользователям. Если script не встречается с агентом, он вернет страницу успеха.
Я хочу включить на странице success/fail имя новой виртуальной машины, добавленной пользователем. Моя проблема в том, что я понятия не имею, как передать ее в обоих моих файлах Haml. Я искал решение, но ничего не нашел.