0

ルーティングを理解するのに問題があります。さらに、routes.rbのリソース(およびリソース)のキーワードを理解しようとしています。

home_controller.rbを作成し、routes.rbに「resources:home」を配置しました。私はレーキルートを走りました、そして私はそれらすべてを見ることができます、しかし私はそれをどうするべきかわかりません。index.html.erbなどのフォームを含むページを表示し、フォームを送信して、コントローラーで何かを実行してから、まったく同じページをもう一度表示したいだけです。

PUT "/ home"などを呼び出したいと思いますが、erbページでhrefがどのように表示されるかわかりません。

次に、home_controller.rbのどのメソッドがその送信をキャプチャしますか?

次に、おそらくindex.html.erbにリダイレクトしますか?

何が起こっているのかを理解できるように、足場やジェネレーターを使用しないようにしています。助けていただければ幸いです。ところで、レール3。

4

3 に答える 3

0

基本的すぎます。私たちの回答よりも詳細なレールのドキュメントを参照してください。見る

  1. http://guides.rubyonrails.org/getting_started.html#rest
  2. http://guides.rubyonrails.org/routing.html
于 2012-05-26T23:58:04.697 に答える
0

以下は、開始するために必要なものの簡単な概要です。

  1. Rails アプリのすべての HTTP リクエストは、1 つのコントローラー メソッドにルーティングされます。そのコントローラー メソッドは、一部のコンテンツをレンダリングするか、302 リダイレクトを発行することによって、要求を満たします (これにより、ブラウザーは別の要求を発行します)。

  2. ROR のルートは、各 HTTP リクエストが各コントローラー メソッドにどのようにマップされるかを記述します。HTTP 要求は、要求された URLHTTP 動詞(GET POST PUTなど)の2 つの属性に基づいてマップされます。

  3. ファイル内で実行すると、Rails に というコントローラーがあることを伝え、Railsresources :homesにそのコントローラーの従来の RESTful ルートを設定するように求めています。これらは次のとおりです。routes.rbHomesController

URLGETのHTTP/homes

  • indexメソッドにマッピング
  • 通常、すべての家の記録を一覧表示するために使用されます

URLGETのHTTP/homes/1

  • showメソッドにマッピング
  • 通常、ホームレコードを表示するために使用されますid = 1

URLGETのHTTP/homes/new

  • newメソッドにマッピング
  • 通常、新しいホーム レコードを作成するためのフォームをレンダリングするために使用されます

URLPOSTのHTTP/homes

  • createメソッドにマッピング
  • フォームのnew送信先
  • 新しいホームレコードを作成するために使用されます
  • 通常、リダイレクトで応答します

URLGETのHTTP/homes/1/edit

  • editメソッドにマッピング
  • 通常、ホームレコードを編集するためのフォームをレンダリングするために使用されますid=1

URLPUTのHTTP/homes/1

  • updateメソッドにマッピング
  • フォームのedit送信先
  • でレコードを編集するために使用されますid=1
  • 通常、リダイレクトで応答します

URLDELETEのHTTP/homes/1

  • deleteメソッドにマッピング
  • 通常、レコードを破棄するために使用されますid=1
  • 通常、リダイレクトで応答します
于 2012-05-27T01:04:18.287 に答える
0

簡単に言うと、リソース キーワードは、Create Read Update および Delete アクションを実行するオブジェクト (ユーザー、記事、投稿、コメントなど) があることを指定します。オブジェクトの一覧表示 (インデックス)、更新 (編集、更新)、作成 (新規、作成)、または削除 (破棄) を可能にする、RESTful アクションと呼ばれる 7 つのアクションを指定します。

これは、コントローラーの 7 つのアクションと 4 つのビュー ファイルに対応します (通常、作成、更新、および削除には独自のビューはありません)。

rake ルートは、ルート、そのパス、およびそのパス ヘルパーを吐き出します。したがって、次の方法でインデックスアクション/ページにリンクできます

<%= link_to 'New Article', new_article_path %>

または、設計によって変更される可能性のあるパスをハードコーディングする必要がないようにするその他のさまざまな用途。

あなたの設計では、7 つのアクションすべてが必要なわけではないように思えます。フォームを表示し、入力内容に基づいてモデル オブジェクトを作成するだけです。だからあなたはするかもしれません

resources :home, only => [:new, :create]

新規でフォームを表示し、作成時にレコードを DB に挿入する場所。

于 2012-05-27T01:51:09.250 に答える