0

Ruby on Rails では、routes.rb で「名前付きルート」を作成すると

map.something ":a/:b", :controller => 'foobar'

また、コントローラーとビューで使用できる 2 つのメソッドであるsomething_pathandも作成します。そのようなものも作成しますかsomething_urlmap.connectそうでなければ、map.connectこのように少し不利ではありませんか?私はそれを確認しましたがconnect_pathconnect_url両方とも自動的に作成されません。

4

2 に答える 2

1

あなたの考えは正しいです。と を作成しmap.connectません。これが次のような名前付きルートの目的です: 「名前」を作成するため、「名前付きルート」という名前が付けられました。something_pathsomething_urlmap.something

于 2010-06-12T11:13:03.157 に答える
0

名前付きルートは、名前付きルートと考えることができますmap.connectmap.connectコントローラー内のアクションを指すルートを確立するだけです。しかし、ルートをどこでも何度も呼び出すのは面倒です。名前付きルートを使用すると読みやすくなります。の利点はmap.connect、任意のコントローラー アクションに接続できることです。routes.rb ファイルを注意深く読むと、次の 2 つのステートメントの優先度が最も低いことがわかります。

Note: These default routes make all actions in every controller accessible via GET requests. You should
consider removing or commenting them out if you're using named routes and resources.
    map.connect ':controller/:action/:id'
    map.connect ':controller/:action/:id.:format'

上記の 2 行をコメントアウトすると、名前付きルート/リソースを使用して定義したルート以外のルートに到達できなくなります。

于 2010-06-12T13:38:51.363 に答える