FuelPHP SimpleAuth 自定义列名称?

FuelPHP SimpleAuth custom column name?

使用 SimpleAuth 包,我正在开发登录功能。 默认情况下,用户 table 应该有一个列 "username"。 但是我的系统有一个用户 table "login_id" 而不是 "username".

Fuel\Core\Database_Exception [ 1054 ]:
Unknown column 'username' in 'where clause' 
[ SELECT * FROM `m_user` WHERE (`username` = 'admin' OR `email` = 'admin') 
AND `password` = 'mIIMXQgANGZ21XHRTpI2Krpla9yx3UwEw0PCNfjAN4I=' ]

我不知道它是如何处理自定义字段名称的。 我尝试在 APPPATH/config/simpleauth.php 上使用“'username_post_key' => 'login_id'”进行配置,但是没有用..

提前致谢。

### APPPATH/config/auth.php ###
return array(
    'driver' => 'SimpleAuth',
    'verify_multiple_logins' => false,
    'salt' => 'techtech',
    'iterations' => 10000,
);

### APPPATH/config/simpleauth.php ###
<?php
    return array(

    'db_connection' => null,

    'table_name' => 'm_user',

    'table_columns' => array('*'),

    'guest_login' => true,

    'multiple_logins' => false,

    'remember_me' => array(

      'enabled' => false,

      'cookie_name' => 'rmcookie',

      'expiration' => 86400 * 31,
    ),

    'groups' => array(
    ),

    'roles' => array(
    ),

    'login_hash_salt' => 'tech_login',

    'username_post_key' => 'login_id',

    'password_post_key' => 'password',
    );


### user table ###
+----------------+------------------+------+-----+---------+----------------+
| Field          | Type             | Null | Key | Default | Extra          |
+----------------+------------------+------+-----+---------+----------------+
| id             | int(11) unsigned | NO   | PRI | NULL    | auto_increment |
| login_id       | varchar(100)     | NO   |     | NULL    |                |
| first_name     | varchar(20)      | NO   |     | NULL    |                |
| last_name      | varchar(20)      | NO   |     | NULL    |                |
| password       | varchar(255)     | NO   |     | NULL    |                |
| last_login_at  | timestamp        | YES  |     | NULL    |                |
| created_at     | timestamp        | YES  |     | NULL    |                |
| updated_at     | timestamp        | YES  |     | NULL    |                |
| deleted_at     | timestamp        | YES  |     | NULL    |                |
+----------------+------------------+------+-----+---------+----------------+

不能配置,因为username_post_key是POST字段名,不是table列名。 table 列名没有配置。

您必须自定义 SimpleAuth,或创建您自己的驱动程序。