|
@@ -50,6 +50,8 @@ class LeFactory(object):
|
50
|
50
|
# @return A string representing python code
|
51
|
51
|
@staticmethod
|
52
|
52
|
def generate_python(backend_cls, backend_args, datasource_cls, datasource_args):
|
|
53
|
+ model = Model(backend=backend_cls(**backend_args))
|
|
54
|
+
|
53
|
55
|
result = ""
|
54
|
56
|
result += "#-*- coding: utf-8 -*-\n"
|
55
|
57
|
#Putting import directives in result
|
|
@@ -68,14 +70,17 @@ import %s\n\
|
68
|
70
|
|
69
|
71
|
#Generating the code for LeObject class
|
70
|
72
|
backend_constructor = '%s.%s(**%s)'%(backend_cls.__module__, backend_cls.__name__, backend_args.__repr__())
|
|
73
|
+ leobj_me_uid = dict()
|
|
74
|
+ for comp in model.components('EmType') + model.components('EmClass'):
|
|
75
|
+ leobj_me_uid[comp.uid] = LeFactory.name2classname(comp.name)
|
|
76
|
+
|
71
|
77
|
result += "\n\
|
72
|
78
|
class LeObject(_LeObject):\n\
|
73
|
79
|
_model = Model(backend=%s)\n\
|
74
|
80
|
_datasource = %s(**%s)\n\
|
|
81
|
+ _me_uid = %s\n\
|
75
|
82
|
\n\
|
76
|
|
-"%(backend_constructor, datasource_cls.__name__, datasource_args.__repr__())
|
77
|
|
-
|
78
|
|
- model = Model(backend=backend_cls(**backend_args))
|
|
83
|
+"%(backend_constructor, datasource_cls.__name__, datasource_args.__repr__(), leobj_me_uid.__repr__())
|
79
|
84
|
|
80
|
85
|
for emclass in model.components(EditorialModel.classes.EmClass):
|
81
|
86
|
cls_fields = dict()
|