0

私はチュートリアルに従っていて、この点に到達しました:http: //rubysource.com/building-your-first-rails-application-views-and-controllers/

rails generate controller urls new

(new、create、showではなく)newアクションのみを渡した理由は、Railsがジェネレーター呼び出しに含まれる各アクションのダミービューを自動的に生成するためです。この場合、新しいアクションのダミービューのみが必要なので、他のビューは除外します。

では、なぜ新しいコントローラーを作成するだけでよいのでしょうか。誰かがそれをもう少し詳しく説明できますか?

4

2 に答える 2

1

このコマンドは、次のUrlsController1つのメソッドのみでを作成するために使用されますnew

このコマンドは、次の場所にビューファイルを自動的に作成します。

app/views/urls/new.html.erb

次のような引数をさらに指定しましたか?

rails generate controller urls new create show

あなたは得たでしょう:

app/views/urls/new.html.erb
app/views/urls/create.html.erb
app/views/urls/show.html.erb

チュートリアルにはnewビューのみが必要なため、追加のビューを作成する必要はありませんでした。したがって、これらの追加の引数はgenerateコマンドに追加されませんでした。

チュートリアルの後半で、メソッドcreateshowメソッドを手動で追加しますが、これらのメソッドのビューを追加することはありません(これらのメソッドは、このアプリケーションで特定のビューファイルを必要としないため)。

UrlsControllerつまり、1つのメソッドを使用してコントローラーを作成し、newそのメソッドに対応するビューを作成しました。createチュートリアルの後半で手動でコーディングする残りのメソッドは、他のもの(または)を自動生成する必要がないようにしますshow

于 2013-01-18T03:13:41.590 に答える
1

これにより、コントローラーに新しいアクションが作成されるだけで、他のアクションはスキップされます。

編集:アプリ/コントローラーにUrlsControllerというコントローラーが生成され、そのコントローラーには、urls/newというルートまたはURLに対応するactionというメソッドが1つだけあります。

于 2013-01-18T02:56:13.843 に答える