0

我为此搜索了很多,但我什至不知道该怎么称呼它。

在简化版本中,我有这些模型:

  • Person(id, name) - hasMany:ArrivalDate
  • Country(id, name) - hasMany:Person
  • ArrivalDate(id,arrival_date,salesman_id) - belongsTo: Person, Salesman(className => Person)

正如你所看到的,我试图让有到达日期的人和销售人员在一张桌子上。

检索数据后,我使用可包含行为来仅获取我想要的模型。

$person = $this->Person->find('first', array(
    'conditions' => array('Person.id' => $id),
    'contain' => array(
        'Country',
        'ArrivalDate'
    )
));

但问题是:我如何“包含”Salesman这个?

Salesman只是一个别名,Person如果我包含Person模型,我只会得到父数据。如果我尝试包含别名 ( Salesman),则会收到错误消息。

4

1 回答 1

1
'contain' => array(
        'Country',
        'ArrivalDate',
        'ArrivalDate.Salesman' => array( insert needed fields here ... )
    )

应该适用于你的情况

于 2013-10-03T08:38:00.140 回答