I'm creating a very complex data structure which requires some advanced
features:
1. SingleJoin for things like physical/shipping/billing addresses:
> class Address(SQLObject):
> # ...
>
> class Client(SQLObject):
> # ...
> Physical = SingleJoin('Address')
> Shipping = SingleJoin('Address')
> # ...
2. Defaults on everything and None values on ForeignKey elements:
> class Server(SQLObject):
> # ...
> Account = ForeignKey('Account', default = None)
> # ...
>
> class Service(SQLObject):
> Type = EnumCol(enumValues=['TCP','UDP','Both'],
> default="TCP", title = "Port Type")
3. An ability to insert relational data inline. For example, Service
is Many:1 with Server, it would be nice to be able to insert Service
records from the Server record view.
---
CatWalk does not display #1 in anything other than structure view.
CatWalk halts insertion and display of #2 if the ForeignKey is None,
and does not understand defaults on anything.
Number 3 would take a large amount of the tedium away from what I'm
doing, which involves much switching between tables to create data in
the correct order. *ugh*