LoginSignup
1
0

More than 1 year has passed since last update.

Laravel radio ボタンを保持させる

Posted at

はじめに

Laravel 初学者の私が学習した内容をアウトプットしていく記事になります。
冗長している点や軽い書き方などあれば御指南お願いいたします。。。:bow_tone5:

Laravel radio ボタンを保持させる

前提:boolean カラムのデータを Radio ボタンで切り替えを実装する。

実際のコード

edit.php
<div class="form-group">
    <div class="form-check">
        <input class="form-check-input" type="radio" name="is_published" value="1" {{ (bool)old('is_published',$portfolio->is_published) ? 'checked' : ''}}>
       <label class="form-check-label" for="flexRadioDefault1">公開</label>
    </div>
    <div class="form-check">
        <input class="form-check-input" type="radio" name="is_published" value="0" {{ (bool)old('is_published',$portfolio->is_published) ? '' : 'checked'}}>
        <label class="form-check-label" for="flexRadioDefault2">下書き</label>
    </div>
</div>

コードの概要

  • Bootstrap Radiosを引用しています。
    validation がかかった際の以前の入力した値をold methodが保持してくれます。
    old() の前に (bool) をつける事で boolean カラムを キャストしています。
    そして、一番の肝が 三項演算子 です。
    {{ ( 条件 ) ? 'ture の挙動' : 'false の挙動' }}になります。
    Radio ボタンの場合、ボタンにチェックがつく動きを input タグ内のcheckedが行っています。
    上の form-check 内での三項演算子は、true の際に挙動し、下の form-check 内での三項演算子は、false の際に挙動します。
    書き方や class の中の役割など理解していれば吸収が早いと思います。
1
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
1
0