本文整理匯總了Python中playhouse.postgres_ext.BinaryJSONField方法的典型用法代碼示例。如果您正苦於以下問題:Python postgres_ext.BinaryJSONField方法的具體用法?Python postgres_ext.BinaryJSONField怎麽用?Python postgres_ext.BinaryJSONField使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類playhouse.postgres_ext
的用法示例。
在下文中一共展示了postgres_ext.BinaryJSONField方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: field_class_to_schematics_field
# 需要導入模塊: from playhouse import postgres_ext [as 別名]
# 或者: from playhouse.postgres_ext import BinaryJSONField [as 別名]
def field_class_to_schematics_field(field: peewee.Field) -> BaseType:
if isinstance(field, peewee.ForeignKeyField):
field = field.rel_field
kwargs = {}
# 檢查是否 require
if not ((field.default is not None) or field.null or field.sequence or isinstance(field, peewee.AutoField)):
kwargs['required'] = True
if field.help_text:
kwargs['metadata'] = {'description': field.help_text}
if isinstance(field, peewee.IntegerField):
return IntType(**kwargs)
elif isinstance(field, peewee.FloatField):
return FloatType(**kwargs)
elif isinstance(field, (PG_JSONField, PG_BinaryJSONField, SQLITE_JSONField)):
# 注意 SQLITE_JSONField 是一個 _StringField 所以要提前
return JSONType(**kwargs)
# HStore 貌似才應該對應 dict,json可以對應任意類型
# return JSONDictType(StringType, **kwargs)
elif isinstance(field, peewee.DateTimeField):
return DateTimeType(**kwargs)
elif isinstance(field, peewee.DateField):
return DateType(**kwargs)
elif isinstance(field, peewee._StringField):
return StringType(**kwargs)
elif isinstance(field, peewee.BooleanField):
return BooleanType(**kwargs)
elif isinstance(field, peewee.BlobField):
return BlobType(**kwargs)
elif isinstance(field, PG_ArrayField):
field: PG_ArrayField
return JSONListType(field_class_to_schematics_field(field._ArrayField__field), **kwargs)
# noinspection PyProtectedMember
示例2: run_migrate
# 需要導入模塊: from playhouse import postgres_ext [as 別名]
# 或者: from playhouse.postgres_ext import BinaryJSONField [as 別名]
def run_migrate(*args):
'''
running some migration.
'''
print('Begin migrate ...')
torcms_migrator = migrate.PostgresqlMigrator(config.DB_CON)
memo_field = migrate.TextField(null=False, default='', help_text='Memo', )
try:
migrate.migrate(torcms_migrator.add_column('tabpost', 'memo', memo_field))
except:
pass
desc_field = migrate.CharField(null=False, default='', max_length=255, help_text='')
try:
migrate.migrate(torcms_migrator.add_column('tabentity', 'desc', desc_field))
except:
pass
extinfo_field = BinaryJSONField(null=False, default={}, help_text='Extra data in JSON.')
try:
migrate.migrate(torcms_migrator.add_column('tabmember', 'extinfo', extinfo_field))
except:
pass
par_id_field = migrate.CharField(null=False, default='', max_length=4,
help_text='父類id,對於label,top_id為""')
try:
migrate.migrate(torcms_migrator.add_column('tabpost2tag', 'par_id', par_id_field))
except:
pass
category_field = migrate.CharField(null=False, default='0', max_length=1,
help_text='0為評論,1為回複')
try:
migrate.migrate(torcms_migrator.add_column('tabreply', 'category', category_field))
except:
pass
try:
migrate.migrate(torcms_migrator.drop_column('tabentity2user', 'count'))
# print('刪除字段成功:count.')
except:
pass
user_ip_field = migrate.CharField(null=False, default='0', help_text='User IP Address', )
try:
migrate.migrate(torcms_migrator.add_column('tabentity2user', 'user_ip', user_ip_field))
# print('添加字段成功:user_ip.')
except:
pass
print('Migration finished.')