0

Rails で scaffold を使用してモデルを作成すると、次のようになります。

rails generate scaffold ユーザー名:文字列 電子メール:文字列

モデル、コントローラー、ビューを生成します。

たとえば、index.html.erb ファイルには、すべてのユーザー登録を一覧表示するテーブルがあります。ユーザーごとにリンクがあります: 表示、編集、破棄

index.html.erb では、これらは次の行で表されます。

 <td><%= link_to 'Show', student %></td>
 <td><%= link_to 'Edit', edit_student_path(student) %></td>
 <td><%= link_to 'Destroy', student, :confirm => 'Are you sure?', :method => :delete %></td>

また、次のように表される新しいユーザー リンクもあります。

<%= link_to 'New Student', new_student_path %>

ただし、モデル、ビュー、コントローラーをスキャフォールドなしで手動で作成すると、これらの「パス」は生成されません。「パス」とは、new_student_path、edit_student_path(student)、student のことです。

これらを手動で生成するにはどうすればよいですか?

4

2 に答える 2

1

リソースを追加すると config/routes.rb、パスが自動的に生成されます。

StudentsController手動で名前を付けたコントローラーを追加したとしましょう。new_student_path、edit_student_path などを取得するには、この行をconfig/routes.rb

resources :students

これにより、7 つの安らかなアクションのパスが追加されます。この URL でレール ルーティングの詳細を読むことができます: http://guides.rubyonrails.org/routing.html

于 2012-04-16T13:02:55.020 に答える
0

を編集しますconfig/routes.rb。たとえば、次のように追加できます。

resources :students

詳細については、 http: //guides.rubyonrails.org/routing.htmlを参照してください。

コマンド ラインで rake routes と入力すると、これを実行する前と後にどのルートが使用可能かを確認できます。
基本的には、次のルートを取得します。

HTTP VerbPath   action  used for 
GET     /photos         index   display a list of all photos 
GET     /photos/new     new     return an HTML form for creating a new photo 
POST    /photos         create  create a new photo 
GET     /photos/:id     show    display a specific photo 
GET     /photos/:id/edit edit   return an HTML form for editing a photo 
PUT     /photos/:id     update  update a specific photo 
DELETE  /photos/:id     destroy delete a specific photo
于 2012-04-16T13:03:44.387 に答える