Modificare gli item

DynoTable modifica gli item come JSON in un vero editor di codice: completamento automatico, formattazione e validazione inline. Per impostazione predefinita il salvataggio mette in staging la modifica per la revisione; una seconda combinazione di tasti ne fa il commit. Entrambe richiedono una licenza attiva.

Apri un item dalla griglia per modificarlo, oppure premi ⌘N per crearne uno nuovo. Un nuovo item è precompilato con gli attributi chiave della tabella; il resto lo compili tu.

L'editor di item con il buffer JSON, il selettore di modalità e i controlli di salvataggio.
L'editor di item con il buffer JSON, il selettore di modalità e i controlli di salvataggio.

Modalità JSON

Un selettore nell'intestazione dell'editor cambia il modo in cui l'item viene rappresentato. Passare tra Plain e DynamoDB JSON fa il round-trip di stringhe, numeri, booleani, Null, Map, List e Set — entro i due limiti descritti in fondo a questa pagina.

  • Plain — i primitivi restano semplici ("count": 3, non {"N": "3"}). I Set usano un sentinella compatto a una sola chiave: {"SS": [...]} per i set di stringhe, {"NS": [...]} per i set di numeri, {"BS": [...]} per i set binari. È la modalità più facile da leggere e modificare a mano.
  • DynamoDB JSON — la forma canonica AWS usata sul filo, dove ogni valore è avvolto dal proprio tipo. Usala quando incolli DynamoDB JSON preso altrove.
  • Flow — un grafo di sola lettura dell'item interpretato (Map, List e Set come nodi). Utile per capire la forma di un record profondamente annidato. Le modifiche avvengono comunque nel buffer Plain / DynamoDB sottostante.

Premi ⌘⇧M nell'editor per scorrere le modalità. Un ? accanto al selettore mostra un esempio affiancato di ciascun formato.

Validazione

L'editor valida mentre scrivi e mostra i problemi inline:

  • JSON malformato e violazioni dello schema compaiono come diagnostica dell'editor.
  • Gli attributi chiave vengono controllati, così non puoi salvare un item a cui manca la chiave di partizione o di ordinamento.
  • Premi ⌘⇧F per riformattare il buffer.

Se un errore di parsing blocca un cambio di modalità, il selettore torna indietro e l'errore resta visibile: il tuo buffer non viene mai riformattato in silenzio in qualcosa di non valido.

Salvataggio

Salvare un item lo mette in staging: la modifica entra nell'area di staging di quella tabella come diff (condivisa tra tutte le viste della tabella) e viene scritta su DynamoDB solo quando fai il commit. Le due combinazioni di salvataggio:

  • ⌘S — mette in staging la modifica (nessun commit). Più sicuro: rivedila prima nel pannello.
  • ⌘⇧S — salva e fa subito il commit.

Lo staging (o un commit andato a buon fine) chiude l'editor. Se un commit incontra un conflitto di scrittura o un errore, l'editor resta aperto così puoi fare il rebase dal pannello di staging. Per riprendere a modificare una modifica in staging, riaprila dalla sua card di diff nel pannello.

Limitazioni

Vale la pena conoscere qualche caso limite della v1:

  • I numeri più grandi di 2⁵³ perdono precisione in entrambe le modalità JSON (è un limite dell'SDK DynamoDB). Per numeri grandi senza perdite, usa la variante marshalled quando fai l'export.
  • I valori binari (B / BS) modificati in modalità DynamoDB possono tornare come tipi stringa al salvataggio: modifica i binari in modalità Plain.

Aggiornato