Php 为什么我会遇到这样一个Laravel 4错误:“你知道吗?”;用户必须实现“可提醒界面”;
我正在尝试使用MySQL实现用户身份验证(重置电子邮件功能),我不断收到此错误Php 为什么我会遇到这样一个Laravel 4错误:“你知道吗?”;用户必须实现“可提醒界面”;,php,mysql,laravel,laravel-4,Php,Mysql,Laravel,Laravel 4,我正在尝试使用MySQL实现用户身份验证(重置电子邮件功能),我不断收到此错误用户必须实现可提醒界面。我知道用户正在实现可提醒界面,因为我使用的是Laravel 4附带的身份验证系统 并且在数据库配置文件中输入了正确的数据库凭据。任何帮助都将不胜感激。多谢各位 代码如下: config/auth.php models/User.php 如果您使用'driver'=>'database'您也不需要指定任何模型,因为Auth将直接使用查询生成器处理表。我建议您使用eloquent,因为通过该模型,您
用户必须实现可提醒界面。
我知道用户
正在实现可提醒界面
,因为我使用的是Laravel 4附带的身份验证系统
并且在数据库配置文件中输入了正确的数据库凭据。任何帮助都将不胜感激。多谢各位
代码如下:
config/auth.php
models/User.php
如果您使用
'driver'=>'database'
您也不需要指定任何模型,因为Auth
将直接使用查询生成器处理表。我建议您使用eloquent
,因为通过该模型,您可以获得更多功能,如提醒、关系访问等。您是否尝试过'driver'=>'database'、
到'driver'=>'eloquent'、
上的配置/auth.php
?(您正在扩展elount
)或者可能添加protected$key='userid'
或受保护的$primaryKey='userid'
tomodel/User.php
感谢您的回复,我将尝试您的建议。我正在使用MySQL not Elotent,我看到的所有示例都扩展了Elotent,因此如果在User上没有扩展,我不知道要扩展哪个类。phpI尝试了您的建议,但仍然没有任何结果。我试图实现的是密码重置功能。好吧,我想我对eloquent vs数据库驱动程序的理解是错误的。现在可以了,谢谢你的回答。我真的很感激。
return array(
/*
|--------------------------------------------------------------------------
| Default Authentication Driver
|--------------------------------------------------------------------------
|
| This option controls the authentication driver that will be utilized.
| This drivers manages the retrieval and authentication of the users
| attempting to get access to protected areas of your application.
|
| Supported: "database", "eloquent"
|
*/
'driver' => 'database',
/*
|--------------------------------------------------------------------------
| Authentication Model
|--------------------------------------------------------------------------
|
| When using the "Eloquent" authentication driver, we need to know which
| Eloquent model should be used to retrieve your users. Of course, it
| is often just the "User" model but you may use whatever you like.
|
*/
'model' => 'User',
/*
|--------------------------------------------------------------------------
| Authentication Table
|--------------------------------------------------------------------------
|
| When using the "Database" authentication driver, we need to know which
| table should be used to retrieve your users. We have chosen a basic
| default value but you may easily change it to any table you like.
|
*/
'table' => 'users',
/*
|--------------------------------------------------------------------------
| Password Reminder Settings
|--------------------------------------------------------------------------
|
| Here you may set the settings for password reminders, including a view
| that should be used as your password reminder e-mail. You will also
| be able to set the name of the table that holds the reset tokens.
|
| The "expire" time is the number of minutes that the reminder should be
| considered valid. This security feature keeps tokens short-lived so
| they have less time to be guessed. You may change this as needed.
|
*/
'reminder' => array(
'email' => 'emails.auth.reminder',
'table' => 'password_reminders',
'expire' => 60
)
);
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableInterface;
class User extends Eloquent implements UserInterface, RemindableInterface
{
/**
* The database table used by the model.
*
* @var string
*/
protected $table = 'users';
/**
* The attributes excluded from the model's JSON form.
*
* @var array
*/
protected $hidden = array('password');
/**
* Get the unique identifier for the user.
*
* @return mixed
*/
public function getAuthIdentifier()
{
return $this->getKey();
}
/**
* Get the password for the user.
*
* @return string
*/
public function getAuthPassword()
{
return $this->password;
}
/**
* Get the e-mail address where password reminders are sent.
*
* @return string
*/
public function getReminderEmail()
{
return $this->email;
}
}