Пример модели следующий:< /p>
Код: Выделить всё
class User(DynamoDanticBaseModel):
user_id: str
first_name: str
@classmethod
def primary_key(cls) -> str:
return "USER#{user_id}"
@classmethod
def sort_key(cls) -> str:
return "USER"
Общим определением является метод класса get, который использует эти значения для вызова boto3 ниже и получения записи, заполнения модели и возврата экземпляра новой модели.
Код: Выделить всё
user = User(user_id='example', first_name='Bacon')
user.put(dynamo_table_ref)
user = User.get(dynamo_table_ref, user_id='example')
user.first_name # => "Bacon"
Есть ли способ разметки моего кода или шаблон, который мне следует использовать, это означало бы, что я мог бы использовать подсказку подписи, показывающую необходимые параметры ? Динамически по отношению к обязательным параметрам, определенным в методе первичного ключа и ключа сортировки?
например. def get(cls, table, user_id: str):
Подробнее здесь: https://stackoverflow.com/questions/790 ... ylance-etc