예제 #1
0
 def _setOtherClass(self, otherClass):
     self.otherClass = otherClass
     if not self.joinColumn:
         self.joinColumn = styles.getStyle(self.soClass).tableReference(
             self.soClass.sqlmeta.table)
     self.clause = (sqlbuilder.Field(self.otherClass.sqlmeta.table,
                                     self.joinColumn) == self.soClass.q.id)
예제 #2
0
파일: joins.py 프로젝트: fregaham/DISP
 def _setOtherClass(self, otherClass):
     self.otherClass = otherClass
     if not self.joinColumn:
         self.joinColumn = styles.getStyle(
             self.soClass).tableReference(self.soClass.sqlmeta.table)
     self.clause = (
         sqlbuilder.Field(self.otherClass.sqlmeta.table, self.joinColumn)
         == self.soClass.q.id)
예제 #3
0
 def insert_styles(self, target):
     style_node = self.ids.params.add_node(TreeViewLabel(text="Style"))
     self.ids.params.add_node(TreeViewField(name='styles', editor=target.params['styles'](target),size_hint_y= None, height=30), style_node)
     for style in target.styles:
         from styles import getStyle
         s_node = self.ids.params.add_node(TreeViewLabel(text=style), style_node)
         sklass = getStyle(style)
         if sklass:
             for param, editor in sklass.attrs.items():
                 self.ids.params.add_node(TreeViewField(name=param, editor=editor(target),size_hint_y= None, height=30), s_node)
예제 #4
0
파일: joins.py 프로젝트: pacoqueen/bbinn
 def __init__(self,
              soClass=None,
              otherClass=None,
              joinColumn=None,
              joinMethodName=None,
              orderBy=NoDefault,
              joinDef=None):
     self.soClass = soClass
     self.otherClassName = otherClass
     classregistry.registry(soClass._registry).addClassCallback(
         otherClass, self._setOtherClass)
     self.joinColumn = joinColumn
     self.joinMethodName = joinMethodName
     self.orderBy = orderBy
     if not self.joinColumn:
         # Here we set up the basic join, which is
         # one-to-many, where the other class points to
         # us.
         self.joinColumn = styles.getStyle(self.soClass).tableReference(self.soClass._table)
예제 #5
0
 def insert_styles(self, target):
     style_node = self.ids.params.add_node(TreeViewLabel(text="Style"))
     self.ids.params.add_node(
         TreeViewField(name='styles',
                       editor=target.params['styles'](target),
                       size_hint_y=None,
                       height=30), style_node)
     for style in target.styles:
         from styles import getStyle
         s_node = self.ids.params.add_node(TreeViewLabel(text=style),
                                           style_node)
         sklass = getStyle(style)
         if sklass:
             for param, editor in sklass.attrs.items():
                 self.ids.params.add_node(
                     TreeViewField(name=param,
                                   editor=editor(target),
                                   size_hint_y=None,
                                   height=30), s_node)
예제 #6
0
 def _finishSet(self):
     if self.intermediateTable is None:
         names = [self.soClass.sqlmeta.table, self.otherClass.sqlmeta.table]
         names.sort()
         self.intermediateTable = '%s_%s' % (names[0], names[1])
     if not self.otherColumn:
         self.otherColumn = self.soClass.sqlmeta.style.tableReference(
             self.otherClass.sqlmeta.table)
     if not self.joinColumn:
         self.joinColumn = styles.getStyle(self.soClass).tableReference(
             self.soClass.sqlmeta.table)
     events.listen(self.event_CreateTableSignal, self.soClass,
                   events.CreateTableSignal)
     events.listen(self.event_CreateTableSignal, self.otherClass,
                   events.CreateTableSignal)
     self.clause = (
         (self.otherClass.q.id == sqlbuilder.Field(self.intermediateTable,
                                                   self.otherColumn))
         & (sqlbuilder.Field(self.intermediateTable, self.joinColumn)
            == self.soClass.q.id))
예제 #7
0
파일: joins.py 프로젝트: fregaham/DISP
 def _finishSet(self):
     if self.intermediateTable is None:
         names = [self.soClass.sqlmeta.table,
                  self.otherClass.sqlmeta.table]
         names.sort()
         self.intermediateTable = '%s_%s' % (names[0], names[1])
     if not self.otherColumn:
         self.otherColumn = self.soClass.sqlmeta.style.tableReference(
             self.otherClass.sqlmeta.table)
     if not self.joinColumn:
         self.joinColumn = styles.getStyle(
             self.soClass).tableReference(self.soClass.sqlmeta.table)
     events.listen(self.event_CreateTableSignal,
                   self.soClass, events.CreateTableSignal)
     events.listen(self.event_CreateTableSignal,
                   self.otherClass, events.CreateTableSignal)
     self.clause = (
         (self.otherClass.q.id ==
          sqlbuilder.Field(self.intermediateTable, self.otherColumn))
         & (sqlbuilder.Field(self.intermediateTable, self.joinColumn)
            == self.soClass.q.id))
예제 #8
0
 def __init__(self,
              creationOrder,
              soClass=None,
              otherClass=None,
              joinColumn=None,
              joinMethodName=None,
              orderBy=NoDefault,
              joinDef=None):
     self.creationOrder = creationOrder
     self.soClass = soClass
     self.joinDef = joinDef
     self.otherClassName = otherClass
     classregistry.registry(soClass.sqlmeta.registry).addClassCallback(
         otherClass, self._setOtherClass)
     self.joinColumn = joinColumn
     self.joinMethodName = joinMethodName
     self._orderBy = orderBy
     if not self.joinColumn:
         # Here we set up the basic join, which is
         # one-to-many, where the other class points to
         # us.
         self.joinColumn = styles.getStyle(
             self.soClass).tableReference(self.soClass.sqlmeta.table)