【发布时间】:2020-04-09 16:28:19
【问题描述】:
这是迁移中的代码:
$table->string('role')->default('Standard');
当我将输入框留空时,它给了我一个错误:
"SQLSTATE[23000]: 完整性约束违规:1048 列 'role' 不能为空
如果输入框为空,我们如何将默认值设置为“标准”?
控制器代码
public function store(Request $request)
{
//return ['message' => 'I have your data'];
$request->validate([
'firstname' => 'required|string|max:191',
'lastname' => 'required|string|max:191',
'email' => 'required|string|email|max:191|unique:users',
'password' => 'required|string|min:6',
]);
return User::create([
'firstname' => $request['firstname'],
'lastname' => $request['lastname'],
'email' => $request['email'],
'phone' => $request['phone'],
'role' => $request['role'],
'usernotes' => $request['usernotes'],
'password' => Hash::make($request['password']), //make sure to import Hash: use Illuminate\Support\Facades\Hash;
'created_by' => $request['created_by'],
'updated_by' => $request['updated_by'],
]);
}
【问题讨论】:
-
'role' => request()->get('role') ?? 'Standard'应该修复它,但如果没有更多详细信息,我将无法为您提供帮助。 -
@Akshay Khale 这里有更多代码。谢谢。
标签: laravel schema field default