Quantcast
Channel: CSSタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8576

それぞれのsubmitボタンごとに、保存内容を分ける。

$
0
0

やりたいこと

例えば、一つのページに保存ボタンが複数あり、保存ボタン(1)を押すと「名前を変更」し、保存ボタン(2)を押すと「プロフィール文章を変更」。

方法

保存ボタン(1)は下記のように記述

<input class="OK" type="submit" value="保存" name="name">

保存ボタン(2)は下記のように記述

<input class="OK" type="submit" value="保存" name="introduce">

違いは、nameの内容(パラメータ値)です。

コントローラーで下記のように条件分岐

 def update
    @user = User.find_by(id:params[:id])
# submitで送信したparamsの値によって、保存する内容を変えるようにします。
     if params[:name]
      @user.update(name_params)
     elsif params[:introduce]
      @user.update(introduce_params)
     end
  end

    private

  def name_params
    params.require(:website).permit(:name)
  end

  def introduce_params
    params.require(:website).permit(:introduce)
  end

上記は説明用になりますので、redirect_toやsaveなどはご自分で設定下さい。


Viewing all articles
Browse latest Browse all 8576

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>