Uma escrita em um documento.
Representação JSON |
---|
{ "updateMask": { object ( |
Campos | |
---|---|
updateMask | Os campos a serem atualizados nesta gravação. Este campo pode ser definido somente quando a operação for |
updateTransforms[] | As transformações a serem executadas após a atualização. Este campo pode ser definido somente quando a operação for |
currentDocument | Uma pré-condição opcional no documento. A gravação falhará se isso for definido e não for atendido pelo documento de destino. |
operation de campo da União. A operação a ser executada. operation pode ser apenas uma das seguintes: | |
update | Um documento para escrever. |
delete | Um nome de documento a ser excluído. No formato: |
transform | Aplica uma transformação a um documento. |
DocumentTransform
Uma transformação de um documento.
Representação JSON |
---|
{
"document": string,
"fieldTransforms": [
{
object ( |
Campos | |
---|---|
document | O nome do documento a ser transformado. |
fieldTransforms[] | A lista de transformações a serem aplicadas aos campos do documento, em ordem. Isto não deve estar vazio. |
Transformação de Campo
Uma transformação de um campo do documento.
Representação JSON |
---|
{ "fieldPath": string, // Union field |
Campos | |
---|---|
fieldPath | O caminho do campo. Consulte |
Campo de união transform_type . A transformação a ser aplicada em campo. transform_type pode ser apenas um dos seguintes: | |
setToServerValue | Define o campo para o valor do servidor fornecido. |
increment | Adiciona o valor fornecido ao valor atual do campo. Deve ser um número inteiro ou um valor duplo. Se o campo não for um número inteiro ou duplo, ou se o campo ainda não existir, a transformação definirá o campo com o valor fornecido. Se o valor fornecido ou o valor do campo atual forem duplos, ambos os valores serão interpretados como duplos. A aritmética dupla e a representação de valores duplos seguem a semântica IEEE 754. Se houver estouro de número inteiro positivo/negativo, o campo será resolvido para o número inteiro positivo/negativo de maior magnitude. |
maximum | Define o campo para o máximo entre seu valor atual e o valor fornecido. Deve ser um número inteiro ou um valor duplo. Se o campo não for um número inteiro ou duplo, ou se o campo ainda não existir, a transformação definirá o campo com o valor fornecido. Se uma operação máxima for aplicada onde o campo e o valor de entrada são de tipos mistos (isto é - um é um número inteiro e o outro é um duplo), o campo assume o tipo do operando maior. Se os operandos forem equivalentes (ex. 3 e 3.0), o campo não muda. 0, 0,0 e -0,0 são todos zero. O máximo de um valor armazenado zero e um valor de entrada zero é sempre o valor armazenado. O máximo de qualquer valor numérico x e NaN é NaN. |
minimum | Define o campo para o mínimo entre seu valor atual e o valor fornecido. Deve ser um número inteiro ou um valor duplo. Se o campo não for um número inteiro ou duplo, ou se o campo ainda não existir, a transformação definirá o campo com o valor de entrada. Se uma operação mínima for aplicada onde o campo e o valor de entrada são de tipos mistos (isto é - um é um número inteiro e o outro é um duplo), o campo assume o tipo do operando menor. Se os operandos forem equivalentes (ex. 3 e 3.0), o campo não muda. 0, 0,0 e -0,0 são todos zero. O mínimo de um valor armazenado zero e um valor de entrada zero é sempre o valor armazenado. O mínimo de qualquer valor numérico x e NaN é NaN. |
appendMissingElements | Anexe os elementos fornecidos em ordem, caso eles ainda não estejam presentes no valor do campo atual. Se o campo não for uma matriz ou se ainda não existir, ele será primeiro definido como uma matriz vazia. Números equivalentes de tipos diferentes (por exemplo, 3L e 3,0) são considerados iguais ao verificar se um valor está faltando. NaN é igual a NaN e Nulo é igual a Nulo. Se a entrada contiver vários valores equivalentes, apenas o primeiro será considerado. O transform_result correspondente será o valor nulo. |
removeAllFromArray | Remova todos os elementos fornecidos da matriz no campo. Se o campo não for uma matriz ou se o campo ainda não existir, ele será definido como uma matriz vazia. Números equivalentes dos diferentes tipos (por exemplo, 3L e 3,0) são considerados iguais ao decidir se um elemento deve ser removido. NaN é igual a NaN e Nulo é igual a Nulo. Isso removerá todos os valores equivalentes se houver duplicatas. O transform_result correspondente será o valor nulo. |
Valor do servidor
Um valor calculado pelo servidor.
Enums | |
---|---|
SERVER_VALUE_UNSPECIFIED | Não especificado. Este valor não deve ser usado. |
REQUEST_TIME | A hora em que o servidor processou a solicitação, com precisão de milissegundos. Se usado em vários campos (documentos iguais ou diferentes) em uma transação, todos os campos receberão o mesmo carimbo de data/hora do servidor. |