Vídeo Tutorial: CakePHP - salvando relacionamentos hasAndBelongsToMany

Olá pessoal,

neste vídeo tutorial iremos continuar o projeto do blog com o salvamento do relacionamento entre Posts e Categorias que é do tipo hasAndBelongsToMany. Lembrando que o relacionamento hasAndBelongsToMany é equivalente ao muitos para muitos em banco de dados.

Assista agora!

Qualquer dúvida ou segestão comentem!

Abraços pessoal e até a próxima…

15 Comentários »

  1. Osni Passsos said,

    Julho 18, 2007 @ 16:48

    Perfeito!

    Desde segunda tava tentando fazer isso, consegui notar onde estava errando…

    Só não conseguir “Editar” com os mesmos comandos, como eu faço isso?Fiz a mesma coisa no controler e no view mas não deu nenhum query (da tabela) debug.

    Abraços

  2. Osni Passsos said,

    Julho 18, 2007 @ 16:51

    Perfeito!

    Desde segunda tava tentando fazer isso, consegui notar onde estava errando…

    Só não conseguir “Editar” com os mesmos comandos, como eu faço isso?Fiz a mesma coisa no controler e no view mas não deu nenhum query (da tabela) debug.

    Abraços

  3. Tulio Faria said,

    Julho 18, 2007 @ 19:00

    Olá Osni,

    pela lógica deveria funcionar sim…

    Vou dar uma checada e lhe falo, mas de qualquer maneira, no próximo vídeo tutorial, vou mudar um pouco a maneira de fazer esse salvamento digamos assim, usando check box.

    Abraços,

  4. Marcio Trindade said,

    Agosto 10, 2007 @ 14:48

    Túlio,

    neste tutorial você falou que não encontrou nada no manuel falando sobre o “{n}.” usado no generateList. Segue uma pequena explicação.

    se vc usar o findAll você vai observar que ele traz um vetor numérico que contém um vetor associativo e detro deste outro vetor associativo ([0][”Categoria”][”id”])

    o generateList usa o método estático Set::extract() que recebe este formato, porém o {n} é uma chave para ele passar por todos os ítem numérico, sendo assim o extract vai interpretar o “{n}.Categoria.id” como [0][”Categoria”][”id”] e passando por todos os indices do vetor.

    bom acho que eu me confundi um pouco pra explicar mas espero que tenha entendido.

    Abraços,
    Marcio Trindade

  5. Rafael Brugnollo said,

    Setembro 12, 2007 @ 14:14

    Fala Túlio tudo bom?!

    Parabéns pela vídeo aula cara….está muito boa…

    Fiquei apenas com uma dúvida…. quando vc digita o código “$html->selectTag(”Categoria/Categoria”" eu não entendi porque a nomenclatura deve ser dessa forma… teria como vc me explicar?

    Abraços cara…. parabéns pelas vídeo-aulas.. são MTO interessantes… já assisti e reassisti várias vezes hehe..

  6. Guilherme Fernando Gielow said,

    Setembro 23, 2007 @ 23:28

    Ae Tulio,
    modifiquei os .php igual ao seu vídeo mas salvam os relacionamentos na n-n mas o campo de descrição sempre fica em branco. Sabes porque isso acontece?

    1 0 Detalhes Editar Excluir

    Obrigado

  7. Guto said,

    Novembro 20, 2007 @ 01:10

    Valeu Túlio, mto bom, mas surgiu uma dúvida, estou trabalhando em um projeto em que há funcionarios e servicos, relacionamento nxm, só que preciso dizer a comissão que um funcionário recebe por um serviço prestado, então teria que colocar mais uma coluna na tabela funcionarios_servico (tabela de relacionamento), até aí tudo bem, mas como faço para resgatar essas informações, o cake prevê isso ou teria que fazer “manualmente” usando a função query?

    Valeu!

  8. Rodrigo said,

    Novembro 20, 2007 @ 13:53

    Olá gostaria de saber se é possivel utilizar um input ao invés de um select para cadastrar as categorias sendo por exemplo se uma categoria digitada não existir ele cadastratra (mais ou menos como as tags do blogger ) ou isto seria complicado demais para fazer?

  9. Marcelo Ariatti said,

    Dezembro 18, 2007 @ 18:14

    Ótimo trabalho! Muito obrigado!

    E quando vai sair o próximo? :D

    Abraços ae Tulio!

  10. Tulio Faria said,

    Janeiro 16, 2008 @ 18:45

    Valeu Márcio pela explicação.

    Obrigado a todos pelo elogios.

    Rafael,

    sobre a nomenclatura, foi o padrão adotado pelo Cake. E não sei lhe dizer qual a relação deste padrão.

    Pode ser que tenha sido a única forma de identificar esses dados.

    Guilherme,

    quando acontece de um relacionamento N:M ter um atributo (além das chaves primárias) deve existir uma classe associativa, a qual ligará o lado N ao M.
    Por exemplo, Produto e Pedido, como um produto pode estar X vezes em um pedido, teríamos que ter uma classe ProdutoPedido que belongsTo Produto e Pedido, e estes que hasMany ProdutoPedido.

    Espero ter clariado :)

    Guto,

    seu caso é o mesmo do Guilherme.

    Rodrigo,

    é possível sim, mas desconheço algo automatizado no Cake. Nada que um pouco de lógica, um foreach, um explode não resolvam. :)

    Marcelo,

    tomara que em breve, estou com vários temas e idéias, mas me falta um pouco de tempo :)

    Abraços a todos!

  11. Paulo said,

    Janeiro 21, 2008 @ 10:42

    Ótimo videotutorial ele me ajudou muito com um problema que eu estava tendo com esse tipo de relacionamento.

    mas tenho uma duvida e quando houver um atributo que aparece em um relacionamento muito para muitos.

  12. Tulio Faria said,

    Janeiro 23, 2008 @ 02:01

    Paulo,

    neste caso tem que criar uma classe intermediária para melhor gerenciar.

    Inté

  13. Josimar said,

    Fevereiro 6, 2008 @ 14:30

    Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\xampplite\htdocs\www\app\controllers\admin_controller.php:1) in C:\xampp\xampplite\htdocs\www\cake\libs\controller\controller.php on line 447

    Alguem sabe do que se trata ?

  14. Vinicius said,

    Junho 25, 2008 @ 11:03

    Olá Túlio,

    Nesse video aparece uma textarea com um editor bem simples, do jeito que eu estou precisando. Não sei se perdi alguma parte em que você o colocou ali. Ele é o que, um helper diferente?

    Obrigado.

  15. Vinicius said,

    Junho 25, 2008 @ 11:12

    Já encontrei no vídeo 6.
    Valeu

RSS feed for comments on this post · URI do TrackBack

Deixe seu comentário