모델 간의 관계를 쿼리하는 데 Phalcon을 사용하고 있습니다. 나는 다음과 같은 모델을 가지고 :모델 관계를 탐색 할 때 열이 모호하다는 것을 나타내는 Phalcon ORM
<?php
class Client extends ModelBase
{
private $id;
private $code;
private $active;
public function initialize()
{
parent::initialize();
$this->hasManyToMany(
"id",
"ClientAddress",
"client_id",
"address_id",
"Address",
"id",
array("alias" => "addresses")
);
public function getAddresses($params = null) {
return $this->getRelated("addresses", $params);
}
}
class Address extends ModelBase
{
private $id;
.......
<?php
class ClientAddress extends ModelBase
{
private $id;
private $active;
public function initialize()
{
parent::initialize();
$this->belongsTo("client_id", "Client", "id", array(
"alias" => "client"
));
$this->belongsTo("address_id", "Address", "id", array(
"alias" => "address"
));
}
}
나는 아래의 오류 받고 있어요 :
$client = Client::findFirst(array(
"conditions" => "id = ?1",
"bind" => array(1 => $current_client_id)
));
$addresses = $client->getAddresses(array(
"conditions" => "id = ?1",
"bind" => array(1 => $id)
));
왜 이런 일이 :
The column 'id' is ambiguous, when preparing: SELECT [Address].* FROM [Address] INNER JOIN [ClientAddress] ON [ClientAddress].[address_id] = [Address].[id] WHERE [ClientAddress].[client_id] = ?0 AND id = ?1
입니다이 오류를 생성하는 코드를? 관계를 제대로 설정하지 않았습니까? 나는 where 절에 테이블 이름을 접두어로 붙일 것이라고 생각했을 것입니다.
의 동일한 열 이름이있을 때 다음과 같은 문제가 다른 절 또는 전혀 절을 사용할 때 모델이 제대로 작동합니까? – CodeMonkey