sourcery-templates
sourcery-templates copied to clipboard
Automatically create relations
Since we're already annotating relations, I think it makes sense to have Sourcery create relations. E.g. in the case of (inside Employee.swift
):
// sourcery: preparation = foreignId, unique = false, foreignTable = Company
internal var companyId: Identifier?
Then it could create an extension on Employee
with a property called company
which would return the parent. Similarly it could create an extension on Company
with a property called employees
which would return the children.
We could consider if it makes sense to have an annotation to indicate 1-1 relations so instead of returning all the children it would return the first children.
It would be great with an annotation that specified whether the results of the extension should be included in makeJSON
Currently you're able to annotate your struct/class with ignoreJSONConvertible
to avoid the JSONConvertible
extension being created. Further you can annotate with ignoreJSONConvertible
on your properties to exclude specific properties from the JSONConvertible
extension.
Is this what you need?