ねえ、私はMVCの経験があります。しかし、私はRailsを初めて使用します。いくつかのデフォルトファイルを生成するためにscaffoldコマンドを使用しています。モデルはきれいで素敵に見えますが、コントローラーとビューは実際には乾燥していません。new.html.erbとedit.html.erbの内容はほぼ同じであり、new/editメソッドとcreate/updateメソッドはほぼ同じことを実行しています。他のフレームワークでは、新しいエントリを更新および作成するために1つのビューのみを使用し、idをオプションのパラメーターとして設定することにより、コントローラーで同じメソッドを使用しました。彼らはこの構造を使用して物事をRESTfulに保ちますか(私は残りについてあまり手がかりがありません:()?このデフォルトのものをクラッドに使用するのがベストプラクティスですか?
3 に答える
足場ジェネレーターは、開始するのにかなり良い場所です。ご指摘のとおり、あまり良くないことがいくつかあります。ほとんどの人は足場が生成するものを取り、それを自分の好みに合わせて修正すると思います。たとえば、フォームパーツをから抽出しnew.html.erb
てedit.html.erb
、パーシャルに配置でき_form.html.erb
ます。次に、更新new.html.erb
しedit.html.erb
てその部分を含め、フォームをレンダリングします。Rails 3では、スキャフォールドジェネレーターがデフォルトでこれを行うように変更されたと思います。
new
とのように見えedit
ますが、ほとんど同じですが、RESTfulリソースのアイデア全体に関連するさまざまなHTTPメソッドとURLにマップされていることを覚えておく必要があります。RailsGuidesのルーティングを確認してください。CRUD 、Verbs、およびActionsのセクションには、7つの異なるルートとそれらの違いの優れた表があります。create
update
ryanbの気の利いたジェネレーターをチェックする必要があります。
http://github.com/ryanb/nifty-generators
スキャフォールディングはと呼ばれる部分的なビューを作成し、それがビューとビュー_form
から参照されます。また、hamlでビューを生成したり、ShouldaまたはRSpecでテストを生成したりするなど、他にも多くの優れたオプションが付属しています。new
edit
彼らがあなたにそれを保持して欲しいのなら、彼らはそれを「足場」とは呼ばないでしょう。箱から出してすべてを機能させるためだけにあります。あなたがそれを本番環境に入れるならば、あなたはおそらく笑われるでしょう。