Ruby 为什么sinatra代码不起作用
我很难弄清楚我到底做错了什么。结果是空的,我希望它返回Ruby 为什么sinatra代码不起作用,ruby,sinatra,Ruby,Sinatra,我很难弄清楚我到底做错了什么。结果是空的,我希望它返回hello(通过before助手调用方法testing) 这里有几个问题。首先,您必须在视图中实际调用所需的输出或变量,最典型的是作为实例变量(否则每个用户都会得到相同的输出)。以下面修改的代码为例: require 'rubygems' require 'sinatra' get '/' do @word end before do testing end def testing @word = "hello" end
hello
(通过before
助手调用方法testing
)
这里有几个问题。首先,您必须在视图中实际调用所需的输出或变量,最典型的是作为实例变量(否则每个用户都会得到相同的输出)。以下面修改的代码为例:
require 'rubygems'
require 'sinatra'
get '/' do
@word
end
before do
testing
end
def testing
@word = "hello"
end
查看免费的在线资源,了解有关Sinatra入门的信息。这里有几个问题。首先,您必须在视图中实际调用所需的输出或变量,最典型的是作为实例变量(否则每个用户都会得到相同的输出)。以下面修改的代码为例:
require 'rubygems'
require 'sinatra'
get '/' do
@word
end
before do
testing
end
def testing
@word = "hello"
end
查看免费的在线资源,了解有关开始使用Sinatra的信息。因为您没有在Get请求中调用输出,所以需要告诉Get方法返回输出。就像功夫人建议的那样。或者尝试以下最低限度的Hello World Sinatra应用程序:
#imports
require 'rubygems'
require 'sinatra'
#Get Request on Root ("/")
get '/' do
"Hello Sinatra World!"
end
此外,将程序置于类下也很有用,因此您还可以执行以下操作:
#imports
require 'rubygems'
require 'sinatra/base'
#My Application Class
class AppName < Sinatra::base
get '/' do
'Hello Sinatra World!'
end
end
AppName.run!
因为您没有在Get请求上调用输出,所以需要告诉Get方法返回输出。就像功夫人建议的那样。或者尝试以下最低限度的Hello World Sinatra应用程序:
#imports
require 'rubygems'
require 'sinatra'
#Get Request on Root ("/")
get '/' do
"Hello Sinatra World!"
end
此外,将程序置于类下也很有用,因此您还可以执行以下操作:
#imports
require 'rubygems'
require 'sinatra/base'
#My Application Class
class AppName < Sinatra::base
get '/' do
'Hello Sinatra World!'
end
end
AppName.run!