Php 将身份验证集成到现有的Laravel项目和用户数据库中

Php 将身份验证集成到现有的Laravel项目和用户数据库中,php,laravel,Php,Laravel,我对拉威尔是一个完全的新手,但是在遵循了很多很多的指导之后,我的项目进行得非常顺利 现在,我有一个名为UsersTable的用户表,它将同时存储Username和Password 然而,在尝试了php-artisan-make:auth和大量的谷歌搜索之后,我发现没有明确、准确的方法来定义用于身份验证的用户表名和用户名密码字段 我在另一个为尝试此功能而创建的项目中,在名为users的表上尝试了原始电子邮件密码身份验证,它的效果非常好。我相信,既然Laravel已经提供了认证系统,既然(我相信)有

我对拉威尔是一个完全的新手,但是在遵循了很多很多的指导之后,我的项目进行得非常顺利

现在,我有一个名为
UsersTable
的用户表,它将同时存储
Username
Password

然而,在尝试了
php-artisan-make:auth
和大量的谷歌搜索之后,我发现没有明确、准确的方法来定义用于身份验证的用户表名和用户名密码字段

我在另一个为尝试此功能而创建的项目中,在名为
users
的表上尝试了原始电子邮件密码身份验证,它的效果非常好。我相信,既然Laravel已经提供了认证系统,既然(我相信)有办法定制,为什么还要重新发明轮子呢


提前谢谢!:D

使用
php artisan make:auth
然后:

从使用用户模型的用户更改默认表的步骤 您必须导航到:
config/auth.php

并做出这些改变

 'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\UsersTable::class, //put the right model name here or you can use database driver
        ],
    ],
要更改表格以获得雄辩的模型,您可以这样做

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

    class UsersTable extends Model
    {
        /**
         * The table associated with the model.
         *
         * @var string
         */
        protected $table = 'UsersTable';
    }
现在 编辑laravel生成的视图,并将电子邮件输入名称更改为
name=“username”
,然后扩展
main.blade.php
,进行一些样式设置,我想你就可以开始了


编辑:别忘了更改验证内容

Laravel基本身份验证系统不是创建您自己的身份验证方法的最快方法。。。我建议您自定义您的身份验证

例如,要使用用户名对用户进行身份验证,可以执行以下操作:

Sentinel::authenticate(array(
    'username'    => 'john.doe',
    'password' => 'foobar',
)); 

对我来说,这是定制身份验证方法的最快方法,希望能对您有所帮助。

谢谢!密码字段呢?我能做$password='PassWordField'吗?嗯,我真的不知道,但是试一试,顺便说一句,如果这对你有效,请在投票部分的绿色标记上打勾,以回答这个问题
Sentinel::authenticate(array(
    'username'    => 'john.doe',
    'password' => 'foobar',
));