PHP の boolean 型 true, false を vue の boolean 型に渡すと正しく処理がなされません。Eloquent を用いているため、下記のような cast も考えたのですが、
Laravel
1 protected $casts = [ 2 'invitation_sent' => 'boolean', 3 'registered' => 'boolean', 4 'logged_in' => 'boolean' 5 ]; 6
データベースに対応するカラムというよりも、Eloquent モデル内のメソッドの返り値で true / false を返しているため、当てはまらないように感じます。
Laravel
1 public static function exist($parameters) 2 { 3 if (self::get($parameters)) { 4 return true; 5 } 6 return false; 7 }
現在は下記のようなヘルパーメソッドを使いキャストしてプログラムを通していますが、どのような方法が最も適切でしょうか。ご意見を伺えれば幸いです。
Laravel
1function booleanToString(bool $boolean) 2{ 3 return $boolean ? 'true' : 'false'; 4}
モデル内メソッドの使い方、vueの呼び出しは、blade側で以下のようにしています。
Laravel
1<vue-button 2:is-exist={{ booleanToString(App\Models\CandidateJobStep::exist(['job_id' => $job->id])) }}></vue-button>
ヘルパー関数なしで、スッとスマートにいけたら素敵だなと思う次第です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/23 02:07