2012-03-20 9 views

答えて

10

まず、最後の行

run Rack::Cascade.new [Foo, Bar] 

をお読みくださいしかし、あなたは唯一のRackupファイルでこれを使用することができ、エラーがスローされます。だから、第二、あなたは以下の内容でconfig.ru(Rackupファイル)と呼ばれるファイルを作成する必要があります。

require './app' 
run Rack::Cascade.new [Foo, Bar] 

と実際のアプリでapp.rbと呼ばれるファイル:

require 'sinatra/base' 

class Foo < Sinatra::Base 
    get('/foo') { 'foo' } 
end 

class Bar < Sinatra::Base 
    get('/bar') { 'bar' } 
end 

あなたは2番目のコマンドラインウィンドウを開き、アプリをテストし、その後

$ rackup 
>> Thin web server (v1.3.1 codename Triple Espresso) 
>> Maximum connections set to 1024 
>> Listening on 0.0.0.0:9292, CTRL+C to stop 

コマンドラインで入力して、サーバーを起動することができます。

$ curl 0.0.0.0:9292/foo 
foo% 
$ curl 0.0.0.0:9292/bar 
bar%  
+0

ありがとうございました。私はSinatraを初めて使っています。例では、 "Rack :: Cascade [Foo、Bar]"を ".new"なしで実行しました。たぶんそれはミススペルまたはsinatraの以前のバージョンでこのような構文を使用していました。 – user1136228

+0

ようこそ。あなただけがテストしているときは、config.ruにすべてのコードを書くこともできますが、それは悪い習慣と考えられます。 –

+0

そして。 (コントローラ、ビュー、ヘルパー、lib、パブリックフォルダ)を備えたレールアプリケーション構造のような、モジュール式のsinatraアプリケーションを作るのは良い習慣ですか? – user1136228

関連する問題