class ModelDefaultNulls(IndexedRedisModel): FIELDS = [IRField('a'), IRField('b', defaultValue='')] INDEXED_FIELDS = ['a', 'b'] KEY_NAME = 'TestSimpleSetAndGet__ModelDefaultNulls'
class InvalidModelBase64(IndexedRedisModel): FIELDS = [IRField('a'), IRField('b')] INDEXED_FIELDS = ['a'] BINARY_FIELDS = ['b'] KEY_NAME = 'Test_InvalidBinary'
class SimpleIRFieldModel_Json(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('jsonData', valueType=IRJsonValue) ] INDEXED_FIELDS = ['name'] KEY_NAME = 'Test_SimpleIRFieldModel_Json'
class SimpleIRFieldModel_WithClassicField(IndexedRedisModel): FIELDS = [ IRField('name', valueType=str), IRField('favColour'), 'strField' ] INDEXED_FIELDS = ['name', 'favColour'] KEY_NAME = 'Test_SimpleIRFieldModel_WithClassicField'
class SimpleIRFieldModel_NoneField(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('nonefield', valueType=None) ] INDEXED_FIELDS = ['name'] KEY_NAME = 'Test_SimpleIRFieldModel_NoneField'
class SimpleIRFieldModel_Timestamp(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('timestamp', valueType=IRDatetimeValue) ] INDEXED_FIELDS = ['name', 'timestamp'] KEY_NAME = 'Test_SimpleIRFieldModel_Timestamp'
class TestCopyModel_CopyModel(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('num', valueType=int, defaultValue=3), ] INDEXED_FIELDS = ['num'] KEY_NAME = 'IRTestCopyModel__CopyModel'
class MyChainedModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRFieldChain('data', [IRField(valueType=IRJsonValue), IRCompressedField(), IRBase64Field()]) , ] INDEXED_FIELDS = [ \ 'name', ] KEY_NAME = 'MyChainedModel'
class MyJsonModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRField('data', valueType=IRJsonValue), ] INDEXED_FIELDS = [ \ 'name', ] KEY_NAME = 'MyJsonModel'
class MyDatetimeModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRField('timestamp', valueType=IRDatetimeValue), ] INDEXED_FIELDS = [ \ 'name', 'timestamp', ] KEY_NAME = 'MyDatetimeModel'
class Model_Basic_Defaults(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('someNum', valueType=int, defaultValue=-1), IRField('someStr', valueType=str, defaultValue='unset'), IRField('gblDefault'), IRClassicField('classic') ] INDEXED_FIELDS = [ 'name', 'someNum', 'someStr', 'gblDefault', 'classic' ] KEY_NAME = 'TestIRDefaultValues__basicDefaults_1'
class TestCopyModel_CopyInstance(IndexedRedisModel): FIELDS = [ IRField('name'), IRPickleField('tags'), ] INDEXED_FIELDS = ['name'] KEY_NAME = 'IRTestCopyModel__CopyInstance'
class MyUnicodeModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRFieldChain('unicodeField', [IRUnicodeField(encoding='utf-8'), IRBase64Field(encoding='utf-8')]), ] INDEXED_FIELDS = [ \ 'name', # 'data', ] KEY_NAME = 'MyUnicodeModel'
class MyRawModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRRawField('data'), ] INDEXED_FIELDS = [ \ 'name', # 'data', ] KEY_NAME = 'MyRawModel'
class MyPickleModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRPickleField('timestamp'), ] INDEXED_FIELDS = [ \ 'name', # 'timestamp', ] KEY_NAME = 'MyPickleModel'
class MyCompressModel(IndexedRedisModel): FIELDS = [ \ IRField('name'), IRFieldChain('data', [IRBytesField(), IRCompressedField()]), ] INDEXED_FIELDS = [ \ 'name', # 'data', ] KEY_NAME = 'MyCompressModel'
class Song(IndexedRedisModel): FIELDS = [ \ IRField('artist'), IRField('title'), IRField('album'), IRField('track_number', valueType=int), # Convert automatically to/from int IRField('duration'), IRField('releaseDate', valueType=datetime.datetime), IRField('description'), IRField('copyright'), IRRawField('mp3_data'), # Do not perform any conversion on the data. IRFieldChain('thumbnail', [IRBytesField(), IRCompressedField(compressMode='gzip')]), # Compress this field in storage using "gzip" compression IRField('tags', valueType=list), IRFieldChain('lyrics', [ IRUnicodeField(encoding='utf-8'), IRCompressedField() ], defaultValue='No lyrics found'), ] INDEXED_FIELDS = [ \ 'artist', 'title', 'track_number', ] KEY_NAME = 'Songs'
class HashedIndexMdl1(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('value', hashIndex=True) ] INDEXED_FIELDS = ['name', 'value'] KEY_NAME = 'Test_HashedIndexMdl1'
class UnHashedIdxMdlForReindex(IndexedRedisModel): FIELDS = [ IRField('name'), IRField('value', hashIndex=False) ] INDEXED_FIELDS = ['name', 'value'] KEY_NAME = 'Test_HashedIndexMdlForReindex'
class SimpleIRFieldModel_Number(IndexedRedisModel): FIELDS = [IRField('name'), IRField('number', valueType=int)] INDEXED_FIELDS = ['name', 'number'] KEY_NAME = 'Test_SimpleIRFieldModel_Number'
class NoKeyModel(IndexedRedisModel): FIELDS = [IRField('fielda'), IRField('fieldb')] INDEXED_FIELDS = ['fielda']
class InvalidIndexedField(IndexedRedisModel): FIELDS = [IRField('a'), IRField('b')] INDEXED_FIELDS = ['c'] KEY_NAME = 'Test_InvalidIndexedField'
class ValidModel(IndexedRedisModel): FIELDS = [IRField('a'), IRField('b')] INEXED_FIELDS = ['a'] KEY_NAME = 'Test_ValidModel'