重複チェック
public function rules()
{
return [
'email' => [Rule::unique('users')],
];
}
// ログイン中のユーザーIDは除外
public function rules()
{
return [
'email' => [Rule::unique('users')->ignore(Auth::id())],
];
}
// deleted_at (理論削除)のものは除外
public function rules()
{
return [
'email' => [Rule::unique('users')->whereNull('deleted_at')],
];
}
keyに存在する場合のみチェック
public function rules()
{
return [
'password' => ['nullable', 'min:8'],
];
}
他のカラムを参照する
required_without
,required_with
, required_if
, required_unless
を使用
public function rules()
{
return [
// twitter_tokenが存在しない場合必須
'email' => ['required_without:twitter_token'],
];
}
public function rules()
{
return [
// is_adminが存在する場合必須
'email' => ['required_with:is_admin'],
];
}
public function rules()
{
return [
// typeが1の場合必須
'email' => ['required_if:type, 1'],
];
}
public function rules()
{
return [
// typeが1出ない場合必須
'email' => ['required_unless:type, 1'],
];
}
Laravelで開発時によく使用するバリデーションをメモ
随時加筆予定・・