4
respostas

Duvida sobre ID e sobre a linguagem em si

Boa tarde.

Estou com 2 duvidas:

A primeira, quando é gerado um novo registro, é gerado automaticamente um _id com um numero imenso... exemplo:

"_id": { "$oid": "589665944e08370a84961289" }

Porem esse _id é imenso, e se eu for usar em uma lista, para futuramente poder editar, vai ficar feio ter aparecendo no site um id desse tamanho, existe alguma alternativa? gerar automaticamente um segundo Id? ou converter esse?

Segunda duvida:

Se eu aprendo MongoDB consigo utilizar os comandos aprendidos em todas as linguagens? ou cada uma tem os comandos corrretos?

Agradeço as respostas =)

4 respostas

Você pode adicionar no seu documento uma propriedade _id e controlar isso pela aplicação.. mas eu acho perda de tempo, usaria o que vem pronto..

Os comandos aprendidos para o mongo, são apenas para ele :). Claro que os conceitos de banco de dados orientado a documentos pode ser aproveitado.

Alberto Souza

Obrigado pela resposta, só uma duvida que ficou e se puder me auxiliar fico grato:

Tambem acho uma perda de tempo ter que inserir um novo _id sendo que o mongodb já gera um para o registro.

Porem no meu projetinho que estou fazendo para usar tanto os conhecimentos adquiridos nesse curso, e no de Node.JS, estou querendo dar um update nos meus itens, não através do Nome, ou por esse _id imenso, e sim por um numero de ordem crescente... por exemplo id 1 id 2 id 3, ou até mesmo se for o caso, meio que deixar esse _id gigante meio que escondido, e meio que recuperar ele de alguma forma na hora de dar o update, sem poluir a visao do usuario.

Tem alguma ideia?

Aí vc cria um campo a mais no documento e busca por ele.. tem que gerar o indice para esse a mais, para não ficar ineficiente. E vc vai ter que controlar a geração dos ids pela app.. Enfim, muito trabalhoso.. Eu continuo sem ver vantagem e não entendi qual o problema do id imenso. Ser imenso não tem galho nenhum, é até mais complicado do usuário mexer no parâmetro e achar algum outro documento.

Obrigado pelo suporte Alberto Souza.

O meu problema é que não consigo imaginar alguma maneira, de pegar esse _id, e meio que esconder ali no html para quando eu solicitar a requisao do update do item, ele meio que identificar automaticamente qual dos itens estou editando.

Se eu deixar a vista o _id ficaria digamos muito feio, logo pensei em ter um id de forma crescente, dessa maneira ficaria facil de colocar na frente dos itens na web e ao mesmo tempo menos feio.

Como não entendo muito de backend, pensei que essa seria a forma mais simples, mas logo vi que não pelo o que voce esta falando =x, enfim.

Será que é melhor abrir essa duvida no forum de Node.js?

Muito obrigado pela a ajuda.