PhalconPHP 加入模型 Echo
PhalconPHP Joining Models Echo
好的,我有两个 table。一个叫做Properties
,另一个叫做PrInfo
。
Properties 是基础 table,PrInfo 是另一个包含额外信息的 table。
我想将它们连接在一起,这样我就可以在站点上显示信息。
$query = Properties::query()
->leftJoin('PrInfo','pr.pr_id = Properties.id','pr')
->execute();
在我看来,自声明 "pr.pr_id = Properties.id"
以来,查询的每个索引都应与 PrInfo table 中的一行连接
但是当我只输入 "print_r($query[1]);" 时,我可以在执行的查询中看到
pr_info table 确实已包含在内,但我不确定它是否与属性 table.
中的行匹配
我试过print_r($query[1]['PrInfo']
但是我只是得到一个错误。
有什么想法吗?
在
中有以下内容
protected '_hasManyToManySingle' => null
protected '_initialized' =>
array (size=2)
...
protected '_sources' => null
protected '_schemas' => null
protected '_behaviors' => null
protected '_lastInitialized' =>
object(PrInfo)[51]
...
protected '_lastQuery' => null
protected '_reusable' => null
protected '_keepSnapshots' => null
protected '_dynamicUpdate' => null
protected '_namespaceAliases' => null
protected '_modelsMetaData' => null
protected '_errorMessages' => null
与其使用 leftJoin()
手动加入,不如在模型中定义适当的关系:
class Properties extends Model
{
...
public function initialize()
{
$this->hasMany("id", "PrInfo", "pr_id");
}
}
阅读更多相关信息:
http://docs.phalconphp.com/en/latest/reference/models.html#relationships-between-models
好的,我有两个 table。一个叫做Properties
,另一个叫做PrInfo
。
Properties 是基础 table,PrInfo 是另一个包含额外信息的 table。
我想将它们连接在一起,这样我就可以在站点上显示信息。
$query = Properties::query()
->leftJoin('PrInfo','pr.pr_id = Properties.id','pr')
->execute();
在我看来,自声明 "pr.pr_id = Properties.id"
以来,查询的每个索引都应与 PrInfo table 中的一行连接但是当我只输入 "print_r($query[1]);" 时,我可以在执行的查询中看到 pr_info table 确实已包含在内,但我不确定它是否与属性 table.
中的行匹配我试过print_r($query[1]['PrInfo']
但是我只是得到一个错误。
有什么想法吗?
在
中有以下内容 protected '_hasManyToManySingle' => null
protected '_initialized' =>
array (size=2)
...
protected '_sources' => null
protected '_schemas' => null
protected '_behaviors' => null
protected '_lastInitialized' =>
object(PrInfo)[51]
...
protected '_lastQuery' => null
protected '_reusable' => null
protected '_keepSnapshots' => null
protected '_dynamicUpdate' => null
protected '_namespaceAliases' => null
protected '_modelsMetaData' => null
protected '_errorMessages' => null
与其使用 leftJoin()
手动加入,不如在模型中定义适当的关系:
class Properties extends Model
{
...
public function initialize()
{
$this->hasMany("id", "PrInfo", "pr_id");
}
}
阅读更多相关信息: http://docs.phalconphp.com/en/latest/reference/models.html#relationships-between-models