我有一个Produto(产品)模型属于Tito Titoo(标题)。 Pedido(订单)有许多Itens和Itens属于产品(产品)。 然而,在我使用包含带有Produto的Itens的模型Pedido后,使用find(all),下一个Produto,包含和递归函数的工作,这里是一个例子:
$proModel = ClassRegistry::Init('Produto');
pr($proModel->find('first', array('conditions' => array('pro_cod' => 650), 'contain' => 'Titulo')));
$cart = $pedModel->find('first', array(
'conditions' => array('ped_cod' => $cart['Pedido']['ped_cod']),
'contain' => array(
'Itens' => array(
'Produto' => array(
'Estadia' => array('Atributo', 'Numero'), 'Produtoplataformas'
),
'Troca', 'Locado', 'Tipo',
'Locacao' => array('Plano', 'Itens')
),
'Usuario'
),
'recursive' => -1
));
pr($proModel->find('first', array('conditions' => array('pro_cod' => 650), 'contain' => 'Titulo')));
exit;
$ proModel-> find的第一个pr工作正常并打印出与之关联的'Titulo',然而,在$ pedModel-> find之后,同样的$ proModel-> find不打印'Titulo'协会。
我没有afterFind方法。
编辑:
我pr($ proModel-> belongsTo)并且在$ pedModel-> find之后它会发生变化。除了$ pedModel-> find的包含部分中使用的协会外,所有协会都会消失
如果我使用新的Produto而不是ClassRegistry :: Init('Produto'),它工作正常,但我想这不是一件好事,对吧?
这很糟糕。
答案 0 :(得分:0)
这是CakePHP的一个错误: https://github.com/cakephp/cakephp/issues/5992
您不能在包含块中包含相同的别名。
其中一名工作人员说这是一个限制,对我来说,这是一个错误,因为它至少没有引发错误。