私は次のように宣言されたモデルを持っています:
class SAProduct(Base):
sku = Column(PRODUCT_SKU_TYPE, primary_key=True)
i_want_to_hide = Column(String(20), nullable=False)
name = Column(Unicode(255), nullable=True)
@property
def my_property(self):
return i_calculate_property_here(self)
Spyne モデルは次のように宣言されます。
db = create_engine('sqlite:///:memory:')
Session = sessionmaker(bind=db)
class TableModel(ComplexModelBase):
__metaclass__ = ComplexModelMeta
__metadata__ = MetaData(bind=db)
class SProduct(TableModel):
__table__ = SAProduct.__table__
属性i_want_to_hide
を Spyne モデルから除外し、プロパティmy_property
を Spyne モデル属性として含めるにはどうすればよいですか?
PS 今、私はこの構文をサポートするためにモンキー パッチ Spyne を使用します:
class SProduct(GComplexModel):
__model__ = Product
class Attributes:
exclude_attrs = ('i_want_to_hide',)
add_attrs = {'my_property': Boolean}
でも手放したい。