Re: Nested "->contain"
I think it would be nice to put a sample in the book with nested contain using "contain option". There's only a nested sample with "contain() method (Loading association, page 98). Thanks for the great work! -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.
Re: Nested "->contain"
OK, i got it to work!!! $contract = $this->get($id, ['contain' => [ 'EntitiesEmp' => ['Cities', 'Owners'], 'EntitiesPro' => ['Cities'] ]]); Em quinta-feira, 25 de setembro de 2014 16h34min23s UTC-3, Tiago Barrionuevo escreveu: > > I tried this: > > $contract = $this->get($id, > ['contain' => [ > 'EntitiesEmp' => ['contain' => ['Cities', 'Owners']], > 'EntitiesPro' => ['Cities'] > ]]); > > And I got the exception: > > "EntitiesEmp is not associated with contain" > > > My Models: > > class ContractsTable extends Table { > public function initialize(array $config) > { > $this->belongsTo('EntitiesEmp', > ['className' => 'Entities', 'foreignKey' => 'entity_emp_id', > 'propertyName'=>'entity_emp', 'conditions'=>'EntitiesEmp.tipo > = 2']); > $this->belongsTo('EntitiesPro', > ['className' => 'Entities', 'foreignKey' => 'entity_pro_id', > 'propertyName'=>'entity_pro', 'conditions'=>'EntitiesPro.tipo > = 3']); > } > } > > > class EntitiesTable extends Table { > > public function initialize(array $config) > { > $this->belongsTo('Cities'); > $this->belongsTo('Owners'); > > ... > } > } > > > Em quinta-feira, 25 de setembro de 2014 15h59min56s UTC-3, Tiago > Barrionuevo escreveu: >> >> Hi, >> >> I can't get nested contains to work. >> First it seems that table->get don't accept the same syntax that >> table->find, like: >> >> $query = $articles->get($id)->contain([ >> ’Authors’ => [’Addresses’], ’Comments’ => [’Authors’] >> ]); >> >> Tell me if i'm wrong. >> >> And how I can get nested contain like this (using sample from the book - >> 2 nested tables with Cities): >> >> $query = $products->find()->contain([ >> ’Shops.Cities.Countries’, >> ’Shops.Cities.States’, >> ’Shops.Managers’ >> ]); >> >> I tried some different syntax with table->get() but I can't get it to >> work! >> >> Thanks in advance. >> >> >> -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.
Re: Nested "->contain"
Em quinta-feira, 25 de setembro de 2014 15h59min56s UTC-3, Tiago Barrionuevo escreveu: > > Hi, > > I can't get nested contains to work. > First it seems that table->get don't accept the same syntax that > table->find, like: > > $query = $articles->get($id)->contain([ > ’Authors’ => [’Addresses’], ’Comments’ => [’Authors’] > ]); > > Tell me if i'm wrong. > > Ok I got this, get() returns an entity and it hasn't contain() method! -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.
Re: Nested "->contain"
I tried this: $contract = $this->get($id, ['contain' => [ 'EntitiesEmp' => ['contain' => ['Cities', 'Owners']], 'EntitiesPro' => ['Cities'] ]]); And I got the exception: "EntitiesEmp is not associated with contain" My Models: class ContractsTable extends Table { public function initialize(array $config) { $this->belongsTo('EntitiesEmp', ['className' => 'Entities', 'foreignKey' => 'entity_emp_id', 'propertyName'=>'entity_emp', 'conditions'=>'EntitiesEmp.tipo = 2']); $this->belongsTo('EntitiesPro', ['className' => 'Entities', 'foreignKey' => 'entity_pro_id', 'propertyName'=>'entity_pro', 'conditions'=>'EntitiesPro.tipo = 3']); } } class EntitiesTable extends Table { public function initialize(array $config) { $this->belongsTo('Cities'); $this->belongsTo('Owners'); ... } } Em quinta-feira, 25 de setembro de 2014 15h59min56s UTC-3, Tiago Barrionuevo escreveu: > > Hi, > > I can't get nested contains to work. > First it seems that table->get don't accept the same syntax that > table->find, like: > > $query = $articles->get($id)->contain([ > ’Authors’ => [’Addresses’], ’Comments’ => [’Authors’] > ]); > > Tell me if i'm wrong. > > And how I can get nested contain like this (using sample from the book - 2 > nested tables with Cities): > > $query = $products->find()->contain([ > ’Shops.Cities.Countries’, > ’Shops.Cities.States’, > ’Shops.Managers’ > ]); > > I tried some different syntax with table->get() but I can't get it to work! > > Thanks in advance. > > > -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.
Nested "->contain"
Hi, I can't get nested contains to work. First it seems that table->get don't accept the same syntax that table->find, like: $query = $articles->get($id)->contain([ ’Authors’ => [’Addresses’], ’Comments’ => [’Authors’] ]); Tell me if i'm wrong. And how I can get nested contain like this (using sample from the book - 2 nested tables with Cities): $query = $products->find()->contain([ ’Shops.Cities.Countries’, ’Shops.Cities.States’, ’Shops.Managers’ ]); I tried some different syntax with table->get() but I can't get it to work! Thanks in advance. -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.