Пример #1
0
 def latest_exp_session(self, min_access_level=u'Anon-Read'):
     query = DBSession.query(Experiment, Session).join(Subject, Experiment.subjects).join(Session, Subject.sessions)
     if not self.is_superuser:
         query = self._filter_access(query, min_access_level)
     if self.trash_flag == 0:
         query = query.filter(Session.trashtime == None)
     elif self.trash_flag == 2:
         query = query.filter(Session.trashtime != None)
     return query.order_by(Session.timestamp.desc()).first() or (None, None)
Пример #2
0
 def dataset_cnt(self):
     query = DBSession.query(Session)
     if not self.is_superuser:
         query = (
             query.join(Subject, Session.subject)
             .join(Experiment, Subject.experiment)
             .join(Access)
             .filter(Access.user == self)
         )
     return query.count()
Пример #3
0
 def experiment(self):
     return DBSession.query(Session, Experiment).join(Subject, Session.subject).join(Experiment, Subject.experiment).filter(Session.id == self.id).one().Experiment
Пример #4
0
 def dataset_cnt(self):
     query = DBSession.query(Session)
     if not self.is_superuser:
         query = query.join(Subject, Session.subject).join(Experiment, Subject.experiment).join(Access).filter(Access.user==self)
     return query.count()
Пример #5
0
 def test_query_obj(self):
     """Model objects can be queried"""
     obj = DBSession.query(self.klass).one()
     for key, value in self.attrs.iteritems():
         assert_equals(getattr(obj, key), value)
Пример #6
0
 def test_query_obj(self):
     """Model objects can be queried"""
     obj = DBSession.query(self.klass).one()
     for key, value in self.attrs.iteritems():
         assert_equals(getattr(obj, key), value)