【发布时间】:2012-03-19 05:34:47
【问题描述】:
我使用 Sinatra 和 Haml 编写了一个用于调用 Ruby 脚本的网络表单。
一切似乎都很好,除了一件事:我需要将参数从 Sinatra/Ruby 脚本传递给 Haml 视图文件。
这是我的代码的一部分:
#!/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
如果脚本遇到错误,它将返回一个包含单词“Error”的字符串。如果发生这种情况,我将调用一个 Haml 文件,该文件将向用户显示错误页面。如果脚本没有遇到错误,它将返回一个成功页面。
我想在成功/失败页面中包含用户添加的新 VM 的名称。我的问题是我不知道如何在我的两个 Haml 文件中传递它。我搜索了一个解决方案,但没有找到任何东西。
【问题讨论】: