2010-12-07 9 views
0

経路の選択はsinatraの場合とレールの場合が異なります。レールでroutes.rbファイルが上から下にスキャンされ、最初に一致するルートが選択されます。Sinatraでメソッドのエイリアスを設定すると、ルートの順序はどのようになりますか?

Sinatraは、各シナリオでルートを関連付けます。このシナリオでは、2つのメソッドにエイリアスがある場合、どのようにルートが選択されますか。

答えて

1

Ramaze actionsとは異なり、この質問が意味をなさす可能性があります。シナトラのルートはメソッドの存在によって定義されていません。むしろ、メソッドを使用してルートを定義し、と呼ぶメソッドは、ルート優先度を部分的に定義します。

たとえば、以下のように記述します:

get "/" do 
    "Welcome!" 
end 

get "/products" do 
    "We sell stuff!" 
end 

は、カスタム「インデックス」または「製品」方法何がエイリアスにありません。詳細については、The Sinatra Book onlineを参照してください。

1

Sinatraルーティングシステムは非常に汎用性があります。

メソッドパスを使用してルートをジャンプできます。ここで[http://www.sinatrarb.com/intro]

get '/guess/:who' do 
    pass unless params[:who] == 'Frank' 
    'You got me!' 
    end 

    get '/guess/*' do 
    'You missed!' 
    end 

よろしく

+0

チェックアウト何を意味するかを "合格" のでしょうか? Sinatraにのみこのキーワードがありますか? –

関連する問題