php - laravel 注册不更新 mysql 中的用户表

标签 php mysql laravel authentication homestead

我是 laravel 的新手,在授权过程中遇到了一些困难。我使用 php artisan migrate:refresh 在 mysql 中重新创建了一个空的用户表。当我进入注册页面填写字段并点击注册时,我在 mysql 中的表没有得到更新。我被重定向到我设置的正确网络链接,因此该部分似乎可以正常工作。

我已确保 mysql 已连接到我的 laravel 项目,因此连接不是问题。

下面是 AuthController.php 中的代码。注册和登录的 View 是使用 php artisan make:auth 命令创建的。

   protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:users',
        'password' => 'required|confirmed|min:6',
    ]);
}
/**
 * Create a new user instance after a valid registration.
 *
 * @param  array  $data
 * @return User
 */
protected function create(array $data)
{
    return User::create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
    ]);
    }

下面是我的 User.php 文件中的代码,该文件位于应用程序目录中。

<?php

namespace App;

use Illuminate\Foundation\Auth\User as Authenticatable;

    class Users extends Authenticatable
   {
    /**
    * The attributes that are mass assignable.
 *
 * @var array
 */
protected $fillable = [
    'name', 'email', 'password',
];

/**
 * The attributes excluded from the model's JSON form.
 *
 * @var array
 */
protected $hidden = [
    'password', 'remember_token',
];

最佳答案

为了使用create,你需要在User model $fillable array中指定

protected $fillable = [
        'email',
        'password',
        'name',
    ];

OR $protected(因此值需要更新) 阅读更多 Docs

关于php - laravel 注册不更新 mysql 中的用户表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35464826/

相关文章:

php - 如何从 mySQL 中单独回显数据以避免任何循环?

php - 如何使用多字段搜索和防止sql注入(inject)

mysql - mysql语法触发器错误

php - 将参数绑定(bind)传递给 Laravel 查询生成器?

php - Laravel Carbon 将日期时间设置为 00

php - 显示每个帖子的总点赞数,每 1 秒后无需刷新页面

php - 如何在文件夹中按名称搜索图像?

php - 调用非对象上的成员函数bindParam()

mysql - 如何将 Spring Boot 应用程序连接到 MySQL 数据库?

file - 如何在 laravel 中使用 Storage::facade 检查目录是否存在?