2012-08-03 63 views
1

我使用RubyGems的安裝西納特拉,創建了一個名爲hello.rb的一個簡單的文件西納特拉的應用程序將無法運行

文件包含:

require 'rubygems' 
require 'sinatra' 

get '/' do 
    puts "Hello World" 

end 

我駕駛的終端桌面Mac上的地方,我得救hello.rb並通過以下方式運行該文件:ruby hello.rb它給了我這個消息它運行在此端口上的WEBrick 4567 我去localhost:4567然後我得到這個消息「Sinatra不知道這個小東西。」

是否必須將hello.rb文件保存到WEBrick服務器文件夾才能使其工作?如果是這樣,該文件夾位於mac上的位置在哪裏?

回答

4

你必須返回的東西,如:

get '/' do 
    "Hello World" # the return is implicit 
end 

然後它會奏效。 puts打印到命令行但返回nil,因此沒有任何內容返回到sinatra。

+0

非常聰明的答案謝謝你,它確實像魅力工作,你能告訴我如何創建一個模板,所以我可以使用HTML和開始建立基本的紅寶石使用例如反向方法來做一些有趣的學習目的?下一步讓我的應用程序包含HTML和CSS?創建一個公共文件夾,還有什麼?我應該在哪個文件中寫ruby代碼?以及如何將其插入到html文件中?我是初學者,所以請耐心等待我的謝謝 – RubyBeginner 2012-08-03 04:45:27

+2

嘗試http://rubysource.com/just-do-it-learn-sinatra-i/獲取教程。但是,也許你會從這樣一個例子中學到更多東西:https://github.com/twilson63/Sinatra-WebSite-Tutorial – Qsario 2012-08-03 05:10:13

+0

謝謝,這個例子與複雜的rails框架相比,信息豐富,差別很大。這個小小的代碼非常適合我從頭開始編寫代碼。最後一個問題,Sinatra包含什麼樣的庫?例如庫進行身份驗證? – RubyBeginner 2012-08-03 05:46:38