Ndb имеет свойство списка - программирование

Ndb имеет свойство списка

Вместо одного StringProperty(), Я хочу сохранить список строк

class BlogPost(ndb.Model):
    s1 = ndb.StringProperty(required=True)
    s2 = ndb.StringProperty(required=True)
    s3 = ndb.StringProperty(required=True)

Я бы предпочел пойти

class BlogPost(ndb.Model):
    my_strings = ndb.StringListProperty() # does this exist?
4b9b3361

Ответ 1

да, используйте повторяющееся свойство:

Любое свойство с повторением = True становится повторным свойством. свойство принимает список значений базового типа, а не одно значение. Например, значение свойства, определенного с помощью IntegerProperty (repeat = True) - это список целых чисел.

см. документы: Повторные свойства

Ответ 2

Также, если вы работаете только в списках и вам не нужна индексация, вы можете использовать ndb.JsonProperty, который будет анализировать список с не пустым действительным объектами Json. Таким образом, вы можете также сжимать свои данные, но вы теряете индексирование, если вы не включаете его как arg, потому что он хранится как Blob.