jamesperet/EstruturaAberta

Sistema de Tags

jamesperet opened this issue · 4 comments

Funções para criar Tags, adiciona-las as páginas e visualizar lista de páginas por tags.

Vou criar duas tabelas no DB:

  • tags
    • id
    • name
  • tagged_items
    • id
    • item_id
    • item_type (página, media ou tag)
    • tag_id

Minha ideia é que todos os objetos dentro do sistema sejam suportem tags, menos usuarios. Podendo atribuir tags a outras tags, podemos criar "tag bundles" para organizar melhor listas muito grandes de tags.

Utilizando o Tags Manager jquery Plugin levemente modificado junto com o Typehead do Twitter bootstrap para o formulario de criação de tags. Ao escrever uma letra da tag o sistema mostra as tags filtradas e ao apertar tab essa tag é adicionada a direita.

Criei a função para salvar as tags no servidor. Quando o usuario salva a página, o sistema manda as tags em uma lista separada por virgulas via POST. Depois o sistema quebra essa lista e cria um array das novas tags e outro das tags antigas. O sistema cria as novas tags que não existem, adiciona novas tags a página e depois faz um cheque entre os dois arrays para descobrir as tags que foram retiradas da página.

Consegui criar o basico do sistema de tags. Sobrou um pequeno bug que acontece na primeira tag do sitema. Preciso também atualizar o instalado para criar as tabelas no banco de dados relacionadas as tags.