0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Rails] renderとredirect_toの違い

Posted at

render

・部分テンプレートファイル
_form.html.erbのように_から始まります。

・ビューファイル内で部分テンプレートを呼び出すとき
<%= render partial: "form" %> _と拡張子を除いた形で呼び出します。
partialは部分テンプレートを指定するオプションです。

・部分テンプレート内で変数を使いたい時
<%= render partial: ‘form’, locals: { form: @form } %>
のように、localsオプションを用いて、
locals: { 部分テンプレート内で使いたい変数: 持っていきたい値 }
と記述します。

・部分テンプレート内で繰り返し処理を行いたい時
<%= render partial: ‘form’, collection: @forms %>
collectionオプションに@formsと複数形の変数を渡すと、部分テンプレートでformが個別のインスタンスとして呼ばれる変数となり、さらにeach文を使用せずに繰り返し処理も行ってくれます。

<%= render @forms %>
と略して書くことも可能です。

redirect_to

redirect_to root_pathのように使います。

違い

render   →  ビュー redirect_to  →  ルーティング → コントローラー →  ビュー

表示されるまでのプロセスが違います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?