# $ref() - Campos que Referenciam Outros Campos

Campos construídos com esta palavra-chave são utilizados quando, numa instância, pretendemos fazer referência a uma - e só uma - instância da mesma ou outra definição. Ao ligar uma instância* a outra instância, podemos aceder às propriedades de informação da instância* ligada. Embora uma instância só possa apontar para uma instância, várias instâncias podem fazer referência à mesma instância. Ainda que os campos do tipo $ref apontem normalmente para instâncias de outras definições, pode haver cenários onde seja vantajoso criar uma árvore de instâncias dentro da mesma definição. Neste caso, podemos marcar o campo como $ref dessa definição.

# Utilização:

$ref(nome_da_definição, query)

O primeiro argumento necessita de ser o nome da definição onde queremos pesquisar, ao passo que o segundo deve consistir no nome da instância específica dessa definição da qual queremos exibir resultados relacionados.

Options:

  • nome_da_definição - The name of the definition to pull the data
  • query: A query usada para pesquisar na definição

Para saber como pesquisar por referências de instâncias de outras definições em campos construídos com a palavra-chave $ref, leia este artigo.

WARNING

Quando temos uma definição com um campo do tipo $ref que refere uma definição cujo campo $instanceLabelé também um campo do tipo $ref, iremos obter na listagem da definição inicial o valor do campo $ref da definição intermédia, i.e. o id da instância referida da terceira definição. Para obtermos realmente o valor do campo $instanceLabel da terceira definição, o campo $instanceLabel da segunda definição terá de ser um campo $auto.ref para o campo da terceira definição que queremos exibir na listagem da definição inicial.

# Exemplos:

No exemplo seguinte estamos a utilizar a expressão $ref(Countries,*) de forma a que os utilizadores possam procurar por valores de campo em todas as instâncias da definição Countries.

Para identificar campos do tipo $ref, basta procurar por qualquer campo acompanhado do seu lado direito por uma lupa. Estes campos permitem-lhe procurar por instâncias de outra definição:

Se pretende saber como construir campos de definição com a palavra-chave $ref, consulte o vídeo incluído em baixo