laravel使用领域从另一个表的雄辩模型

laravel使用领域从另一个表的雄辩模型

问题描述:

我有一个名为“用户”的模型。我想从另一个表的Eloquent中获得“Password”字段,并且当用户调用user :: all()方法时,来自不同表的所有选定字段都会出现在结果中。 我该怎么做?laravel使用领域从另一个表的雄辩模型

结果不显示在with()中。

我的问题通过在Eloquent模型中使用$ appends解决。

我的代码:

class User extends Eloquent { 
protected $table = 'user'; 
protected $attributes = ['password']; 
protected $appends = ['password']; 
public function getPasswordAttribute() 
{ 
    return $this->getPAsswordMethod(); 
} 
} 

您的问题非常难以理解,但我会给你一个电路板解决方案。

您可以通过您创建的Model对象与其他表建立关系。让我们假装你有一个属于用户的密码表。

用户模式:

public function password() 
{ 
return $this->hasOne(Password::class, 'FK', 'PK'); 
} 

你现在可以做用户::使用( '密码') - >获取([ '字段名']);这会给你所有与用户有上述关系的密码。

+0

感谢您的回答,我从两个不同的连接2的数据库,并且不想与() – Ehsan

+0

@ehsan在这种情况下,您将需要查询其他数据库使用并将结果存储为变量,然后在查询中传递它。如果表格是相同的并且共享密钥,您可以查看laravels收集方法 – ExohJosh