0
在登录时,查询失败,因为“电子邮件”是不是“usuario”,它在“人物”更改SQL查询,Laravel 5.1
Unknown column 'email' in 'where clause' (SQL: select * from `usuario` where `email` = [email protected] limit 1)
这不是改变数据库的解决方案模型,因为不是所有的“角色”是“usuario”,但所有的“usuario”是“人物”。
试图设置的关系:
class Persona extends Model implements AuthenticatableContract,
AuthorizableContract,
CanResetPasswordContract
{....}
public function usuario()
{
return $this->hasOne('App\Usuario');
}
//----------------------------------------------------//
class Usuario extends Model implements AuthenticatableContract,
AuthorizableContract,
CanResetPasswordContract
{
{....}
public function persona()
{
return $this->hasOne('App\Persona');
}
两个表都有相同的密钥。
但查询不会改变,我虽然也许Laravel可以在某处做一个“INNER JOIN”,不知道Laravel是否可以自动执行此操作,所以我尝试更改查询但不知道确切位置位于。
我觉得在这样一个解决方案,但它看起来太容易了,不知道是否会是一个很好的方式=/
- 获取电子邮件和passwd从后
- 获取ID,电子邮件和PASSWD从BD与SQL
- 如果[EMAIL和passwd匹配]验证:: loginUsingId(ID); [ELSE]返回与错误。
据我所知,验证:: loginUsingId(ID);就像一个成功的验证::尝试()...但这个解决方案,我需要知道以后该怎么实现油门和“记住”单独选项...所有的心思都欢迎:d