Add ClassRelation #99
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have made a few changes on how
Relationobject instantiation is handled. Following is a summary:Relationand its subclassClassRelationRelationcan be instantiated directly, taking in name of table, name of schema,connectionobject, table definition, andcontextdictionary. This allows for one to manipulate tables quickly without having to write a dedicated classRelationmay (and will likely) point to different tables on potentially different schema or even different database servers - there is no class level bindingClassRelationis a subclass ofRelationthat is designed from ground up to be bound to a specific schema & database at the class level - this way every instance ofClassRelationderivative is already bound to a specific schema, and any change in relevant information (e.g.heading) is shared among all instancesManualRelation,ComputedRelation, etc are derived fromClassRelation, and the end users are expected to derive their classes from one of these classes, rather than directly inheriting from theClassRelation