Skip to content

Instantly share code, notes, and snippets.

@bartv
Created November 29, 2013 09:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bartv/7703580 to your computer and use it in GitHub Desktop.
Save bartv/7703580 to your computer and use it in GitHub Desktop.
from Imp.export import dependency_manager
from Imp.resources import Resource
@dependency_manager
def use_relations(config_model, resources):
for _id, resource in resources.items():
res_class = resource.model.__class__
if resource.model.__module__ == "std" and res_class.__name__ == "File":
model = resource.model
for name, attr in model.__entity__._attributes.items():
# check if the attribute is a relation
if hasattr(attr, "end"):
# get our side
attr_end = attr.end
if attr_end.depends:
requirement = getattr(model, name)
print("%s depends on %s" % (model, requirement))
req_resource = Resource.get_resource(requirement)
if not req_resource:
print(" but %s is not exported" % requirement)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment