Flask,棉花糖 - 嵌套字段的问题
Flask, marshmallow - problem with nested field
我有 2 table 人有 "one-to-one" 关系。
当我从一个 table 获取数据时,我想包括来自相关 table 但没有 "dot notation" 的一个字段。
什么有效:
class UserEntitySchema(db_schema.Schema):
class Meta:
fields = ('id', 'username', 'email', 'confirmed', 'created', 'enabled', 'account.status')
我希望 "account.status" 会像 "status" 一样出现,但我不知道如何获得它。
我按照@marke 的建议尝试了 Pluck,但没有任何结果。这里有什么问题吗?
class AccountEntitySchema(db_schema.Schema):
current_status = fields.Str()
class Meta:
fields =('current_status',)
class UserEntitySchema(db_schema.Schema):
status = fields.Pluck(AccountSchema, 'current_status')
class Meta:
fields = ('id', 'username', 'email', 'status')
我更新的有效解决方案(感谢@marke!):
class AccountEntitySchema(db_schema.Schema):
class Meta:
fields =('current_status',)
class UserEntitySchema(db_schema.Schema):
account = fields.Pluck(AccountSchema, 'current_status', data_key='status') #<==== data_key will replace the existing field
class Meta:
# Fields to expose
fields = ('id', 'username', 'email', 'account')
我有 2 table 人有 "one-to-one" 关系。
当我从一个 table 获取数据时,我想包括来自相关 table 但没有 "dot notation" 的一个字段。
什么有效:
class UserEntitySchema(db_schema.Schema):
class Meta:
fields = ('id', 'username', 'email', 'confirmed', 'created', 'enabled', 'account.status')
我希望 "account.status" 会像 "status" 一样出现,但我不知道如何获得它。
我按照@marke 的建议尝试了 Pluck,但没有任何结果。这里有什么问题吗?
class AccountEntitySchema(db_schema.Schema):
current_status = fields.Str()
class Meta:
fields =('current_status',)
class UserEntitySchema(db_schema.Schema):
status = fields.Pluck(AccountSchema, 'current_status')
class Meta:
fields = ('id', 'username', 'email', 'status')
我更新的有效解决方案(感谢@marke!):
class AccountEntitySchema(db_schema.Schema):
class Meta:
fields =('current_status',)
class UserEntitySchema(db_schema.Schema):
account = fields.Pluck(AccountSchema, 'current_status', data_key='status') #<==== data_key will replace the existing field
class Meta:
# Fields to expose
fields = ('id', 'username', 'email', 'account')