问题描述
我有一个注册表单,可以从用户那里获取数据并将其发送到数据库
这是视图页面中的输入之一:
<div style="font-family: Frutiger;" class="mt-4 text-right">
<x-jet-label for="name" value="{{ __(' * First Name') }}" />
<x-jet-input id="name" class="block mt-1 w-full text-right border" type="text" name="name" :value="old('name')" required autofocus autocomplete="name" />
</div>
所以我想让这个输入成为可选的,并且能够提交没有任何值的表单,但如果它留空,我希望默认值是例如“名称”
有没有通过这段代码或通过Mysql解决这个问题?
解决方法
也许你的控制器中有这样的东西来发送数据:
$request->validate([
'name' => 'required',...
]);
你应该从这里删除 'name' => 'required'
。
但是如果您遇到数据库错误,您应该将其添加到您的迁移中:
$table->string('name')->nullable();
,
一种选择是将输入的初始值设置为包含值:
<x-jet-input id="name" class="block mt-1 w-full text-right border" type="text" name="name" :value="{{ old('name') ?? 'Default value' }}" required autofocus autocomplete="name" />