Qual é o melhor local do código para definir métodos de relacionamento da tabela usando modelos Zend Framework?

StackOverflow https://stackoverflow.com/questions/391111

Pergunta

Estou criando um sistema de tag simples que me permite ligar uma tag para quase tudo na minha candidatura. Para facilitar isso, criei uma tabela chamada "objetos", referenciado pelo meu modelo "Objeto".

Eu tenho configuração três modelos no momento:

  • Tag (com TagObject definido como um dependentTable)
  • Objeto (com TagObject definido como um dependedTable)
  • TagObject (tanto com Tag e objeto definido no referenceMap)

Eu já criou alguns métodos simples, como fetchTagById() e fetchTagByName() no meu modelo de Tag, mas agora eu quero criar um método que obtém minhas marcas e suas respectivas ocorrências na tabela de objetos, a fim de criar uma nuvem de tags simples.

Estrutura-sábio, o que é a melhor localização para criar este método (usando findDependentRowset () )?

De alguma forma eu sinto que não é muito boa prática para armazenar esta no meu modelo de Tag, mas guardá-lo no meu modelo TagObject parece estranho também, e pode complicar as coisas.

Qualquer conselho seria muito apreciado.

Agradecemos antecipadamente.

Foi útil?

Solução

Se o método recupera as tags, então ele deve estar no modelo de tag. Se ele recupera objetos, ele deve estar no modelo de objeto. Desde que você está recuperando tags e suas ocorrências, que deve ser no modelo tag.

eu chamaria o modelo tags não Tag, uma vez Tag é uma linha em tags e na ZF do modelo é geralmente um DataGateway a uma tabela. Mesmo com os objetos.

$tags = new Tags();
$cloud = $tags -> getWithObjectOccurrences();

Em outra nota, eu nunca citar "objeto" classe ou "objetos", como é muito genérico (objetos são uma construção da linguagem básica). Considere encontrar um nome mais descritivo para ele.

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