Laravel 登录和注册:新增注册用字段
在Laravel框架中,我们可以通过使用Laravel的内置认证系统来实现登录和注册功能。如果需要添加新的注册字段,我们可以通过修改用户模型和注册控制器来实现。
以下是如何添加新的注册字段的步骤:
修改用户模型(User模型):
打开
app/User.php
文件,并添加你想要的字段。例如,我们要添加一个phone
字段。
class User extends Authenticatable
{
// ...
protected $fillable = [
'name', 'email', 'password', 'phone', // 添加新的字段
];
// ...
}
修改注册控制器(RegisterController):
打开
app/Http/Controllers/Auth/RegisterController.php
文件,并在validator
方法中添加新的验证规则。
class RegisterController extends Controller
{
// ...
protected function validator(array $data)
{
return Validator::make($data, [
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'min:8', 'confirmed'],
'phone' => ['required', 'string', 'max:255'], // 添加新的验证字段
]);
}
// ...
}
修改注册视图(register.blade.php):
打开
resources/views/auth/register.blade.php
文件,并添加新的输入字段。
<form method="POST" action="{{ route('register') }}">
@csrf
<!-- 其他字段 -->
<div class="form-group row">
<label for="phone" class="col-md-4 col-form-label text-md-right">{{ __('Phone') }}</label>
<div class="col-md-6">
<input id="phone" type="text" class="form-control @error('phone') is-invalid @enderror" name="phone" value="{{ old('phone') }}" required autocomplete="phone">
@error('phone')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<!-- 其他字段 -->
</form>
完成以上步骤后,新的注册字段就会被添加到注册表单中,并且在用户注册时进行验证。
评论已关闭