get
Introduction
get
method performs get request using aws-sdk GetItemCommand.
Item
in GetItemCommandOutput is fully typed based on your Schema declaration.
execute
get
takes 2 arguments:
- item identifier (required)
- options (optionnal)
const res = await User.get("user-1", { ReturnConsumedCapacity: "TOTAL" });
res.Item?.firstname;
If your table is a composite table (HASH and RANGE) you must pass primaryIndex
and sortKey
as object.
const res = await User.get({
groupId: "group-1",
userId: "user-1",
});
options
options
is an object which accepts GetItemCommandInput
options and DynamoQL specific options.
exec
exec
boolean directive to execute or not the actual request.
When false
get will return GetItemCommandInput
object.
import type { GetItemCommandInput } from "@aws-sdk/client-dynamodb";
const cmd: GetItemCommandInput = await User.get(
"user-1",
{ exec: false }
);
Select
Select
accepts an array of attributes and produces a ProjectionExpression
.
const res = await User.get(
"user-1",
{ Select: ["id", "isActive"] }
);
note
Select
affects returned Item
type.
const { Item } = await User.get("user-1", { Select: ["id", "isActive"] });
Item?.firstname; // Property 'firstname' does not exist on type { id: string; isActive?:boolean } ...
getterInfo
getterInfo
allows you to pass any value to your Schema get function's third argument.
const res = await User.get(
"user-1",
{ getterInfo: { forFrontend: true } }
);