Este documento foi traduzido por IA. Para informações precisas, consulte a versão em inglês.
SingleRecordResource
Resource voltado para um único registro: os dados são um único objeto, suportando busca por chave primária, criação/atualização (save) e exclusão. É adequado para cenários de "registro único", como detalhes e formulários. Diferente do MultiRecordResource, o método getData() do SingleRecordResource retorna um único objeto. Você especifica a chave primária via setFilterByTk(id), e o save() chamará automaticamente create ou update com base no estado de isNewRecord.
Herança: FlowResource → APIResource → BaseRecordResource → SingleRecordResource.
Formas de criação: ctx.makeResource('SingleRecordResource') ou ctx.initResource('SingleRecordResource'). Antes de usar, é necessário chamar setResourceName('nome_da_coleção'); ao realizar operações por chave primária, chame setFilterByTk(id). No RunJS, o ctx.api é injetado pelo ambiente de execução.
Cenários de Uso
Formato dos Dados
getData()retorna um único objeto de registro, que corresponde ao campodatada resposta da APIget.getMeta()retorna metadados (se disponíveis).
Nome do Recurso e Chave Primária
Estado
Parâmetros da Requisição (Filtro / Campos)
CRUD
Configurações e Eventos
Exemplos
Busca básica e atualização
Criar novo registro
Excluir registro
Carregamento de associações e campos
Recursos de associação (ex: users.profile)
save sem atualização automática
Ouvir eventos refresh / saved
Observações
- setResourceName é obrigatório: Você deve chamar
setResourceName('nome_da_coleção')antes de usar, caso contrário, a URL da requisição não poderá ser construída. - filterByTk e isNewRecord: Se o
setFilterByTknão for chamado,isNewRecordserátruee orefresh()não iniciará uma requisição; osave()executará uma açãocreate. - Recursos de associação: Quando o nome do recurso estiver no formato
pai.filho(ex:users.profile), você deve chamarsetSourceId(chave_primária_do_pai)primeiro. - getData retorna um objeto: O
dataretornado pelas APIs de registro único é um objeto de registro; ogetData()retorna esse objeto diretamente. Ele se tornanullapós odestroy().
Relacionados
- ctx.resource - A instância de resource no contexto atual
- ctx.initResource() - Inicializa e vincula ao
ctx.resource - ctx.makeResource() - Cria uma nova instância de resource sem vincular
- APIResource - Recurso de API geral solicitado por URL
- MultiRecordResource - Voltado para coleções/listas, suporta CRUD e paginação

