0

routes.rb 内にリソース x がありますが、別のコントローラー y もあり、ページの 1 つでコントローラー x の「新しい」アクションにリンクしたいと考えています。

通常、次のようなルーターで定義された一致ステートメントがある場合

match 'signin', to: 'session#new'

私は行くことができます

<%= link_to "text", signin_path %> 

ただし、コントローラー x と同じようにリソースを使用し、routes.rb に match ステートメントを記述することなく、新しいアクションにリンクする必要がある場合はどうすればよいですか?

ありがとう

4

2 に答える 2

0

これを試して

  match '/signin' => 'session#new', :as => :new_session

現在、サインイン パスはnew_session_path です

ビューファイルに書き込みます

<%= link_to "SignIn", new_session_path %>

端末に書き込む - $ rake routes

リソースと他のルートを表示できます。そのためには、「/signin」パスを選択し、そのパスをリンクに書き込みます。

于 2012-09-27T05:33:19.730 に答える
0
<%= link_to 'New', new_controller_name_path %>

rake routesまた、すべてのルートをアプリ ディレクトリでタイプ別に表示できます。

デフォルトのパスを変更したい場合は、次のようにconfig/routes.rb smth に書き込むことができます:

match 'controller_name/new', :to => 'controller_name#new', :as => 'only_my_new', :via => :get

次に、リンクを作成します。

 <%= link_to 'New', only_my_new_path %>
于 2012-09-27T05:22:11.807 に答える