Pergunta

Eu tenho um modelo de dados existente onde posso renomear coisas livremente para corresponder convenções do CakePHP . Eu tenho um tipo de nó gráfico, onde um nó pode ter um número arbitrário de nós filhos e um número arbitrário de nós pai (relacionamentos unidirecionais).

Aqui está a tabela de nós, seguindo as convenções do CakePHP:

Table: nodes
Column: node_id (INT)
Column: description (TEXT)

A minha pergunta é o que a juntar-se a tabela deve ser semelhante? Aqui está o que parece agora:

Table: nodes_nodes
Column: parent_node_id (INT)
Column: child_node_id (INT)

E o que a documentação implica que deve ser:

Table: nodes_nodes
Column: node_id (INT)
Column: node_id (INT)

Observe que dois nomes de coluna são as mesmas, o que obviamente não vai funcionar. O que deveria essas duas colunas ser chamado? Ou pode convenções do CakePHP não lidar com essa situação sem configuração?

Foi útil?

Solução

Como neilcrookes observou, existem alguns artigos sobre este na web sobre como fazer isso no CakePHP. Aqui é um deles, utilizando Usuário Usuário HABTM (amigos) como um exemplo.

Neste artigo ligado, você pode ignorar tudo após a definição de classe de usuário, se você não está indo para ser paginação do modelo.

Outras dicas

Se um nó tem nós filhos, que esses nós filhos têm automaticamente o primeiro nó como um pai?

Esta relação pode ser semelhante a uma relação de usuários para usuários, onde a relação simboliza a noção comum de 'amigo' nas redes sociais. Sugiro que você tenha um Google em torno de usuário modelos de dados / amigo para ver se isso ajuda.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top