Laravel auth 可选字段?
Laravel auth optional field?
在laravel认证
registercontroller.php
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'affiliatetoken' =>Str::random(12),
'affiliate' => $data ['affiliate'],
]);
}
要求
$data ['affiliate']
已定义...如果我希望它是可选的,我可以发送一个空值吗?数据库可以为空,可能类似于
如果 $data ['affiliate']
已定义则创建,但如果未定义则保留 null
或创建 0
使用 data_get 助手:
// 3rd argument is what to default to if the key is not set. null by default
'affiliate' => data_get($data, 'affiliate'),
@AnkitPatel 建议 array_get 这也有效。 data_get
适用于数组和对象。
使用这个
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'affiliatetoken' =>Str::random(12),
'affiliate' => $data ['affiliate'] ?? null, // or 0 "?? operator is equivalent isset()"
]);
}
在laravel认证
registercontroller.php
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'affiliatetoken' =>Str::random(12),
'affiliate' => $data ['affiliate'],
]);
}
要求
$data ['affiliate']
已定义...如果我希望它是可选的,我可以发送一个空值吗?数据库可以为空,可能类似于
如果 $data ['affiliate']
已定义则创建,但如果未定义则保留 null
或创建 0
使用 data_get 助手:
// 3rd argument is what to default to if the key is not set. null by default
'affiliate' => data_get($data, 'affiliate'),
@AnkitPatel 建议 array_get 这也有效。 data_get
适用于数组和对象。
使用这个
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => Hash::make($data['password']),
'affiliatetoken' =>Str::random(12),
'affiliate' => $data ['affiliate'] ?? null, // or 0 "?? operator is equivalent isset()"
]);
}