Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
olá,
tentei relacionar duas tabelas (uma se relaciona com a outra) com um model (musicas), e não consegui.
é o seguinte:
musicas belongsTo prt_musicas
prt_musicas hasMany gen_musicas
como fica isso em código ?
o que eu fiz:
model musicas:
<?php
class Musica extends AppModel {
var $name = 'Musica';
// JOIN MODO PADRÃO
//var $belongsTo = array('atr_blogs' => array('className' => 'AtrBlog', 'foreignKey' => 'atr_blogs_id'));
var $hasMany = array('img_musicas' => array( // interliga com a tabela de generos de musica
'className' => 'ImgMusica'));
var $belongsTo = array('prt_musicas' => array( // interliga com a tabela de generos de musica
'className' => 'PrtMusica'));
}
?>
model prt_musicas:
<?php
class PrtMusica extends AppModel {
var $name = 'PrtMusica';
var $hasMany = array('gen_musicas' => array( // interliga com a tabela de generos de musica
'className' => 'GenMusica'));
}
?>
obrigado desde já :)
oi Lucas,
o model GenMusica existe sim. Sim sim, escrevi tudo no plural, mas é 'Musica' mesmo.
Fiz o que sugeriu, e não deu certo...
Não aparecem os dados de GenMusica quando uso o findAll no musica_contoller.php :(
vlw
Mostre como está fazendo o find...
Tente aumentar o número 'recursive' => 2
>
Mostre como está fazendo o find...
Tente aumentar o número 'recursive' => 2
http://book.cakephp.org/view/439/recursive
poxa, ainda assim não está funcionando http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif
o find:
...
$query = $this->Musica->find('all', array('recursive' => 2,'order' => '`Musica`.`id` DESC','conditions'=>'filtro != "hide"'));
...Como está vindo o resultado?
Como está seu DB, mostre a estrutura? Poste todos os models usados (são só aqueles acima mesmo)?
Tente simplificar:
<?php
class Musica extends AppModel {
class PrtMusica extends AppModel {
Outra coisa.. o model GenMusica existe? Não seria apenas "Musica"?