Example #1
0
 def get(cls, q_obj=None, **kwargs):
     query = cls.objects()
     query_obj = { }
     if q_obj:
         query_obj.update(q_obj)
     if kwargs:
         query_obj.update(kwargs)
     #print query_obj
     if len(query_obj) == 0:
         return None
     query.filter(query_obj).limit(1)
     result = query.all_items()
     if query.count() != 1:
         return None
     return result[0]
Example #2
0
 def get(cls, q_obj=None, **kwargs):
     query = cls.objects()
     query_obj = {}
     if q_obj:
         query_obj.update(q_obj)
     if kwargs:
         query_obj.update(kwargs)
     #print query_obj
     if len(query_obj) == 0:
         return None
     query.filter(query_obj).limit(1)
     result = query.all_items()
     if query.count() != 1:
         return None
     return result[0]
Example #3
0
 def search(cls, text, ch=None):
     text = unicode("%{0}%".format(text))
     query = Server.query.filter(
             or_(Server.name.like(text),Server.host.like(text))
         )
     if ch is not None:
         query = query.filter(Server.channel==ch)
     return query
 def test_filter_name_starts_with(self):
     self.assertEqual(
         filter(self.test_data, full_name__starswith='Deborah Lopez'),
         [[
             'Deborah Lopez', 'blue', 'Henson-Pearson',
             '*****@*****.**', '(783)023-6489', '5067'
         ],
          [
              'Deborah Lopez', 'silver', 'Willis Inc',
              '*****@*****.**', '422.395.8104', '5090'
          ]])
 def test_email_contains(self):
     self.assertEqual(filter(self.test_data, email__contains='@hotmail'), [[
         'Megan Taylor', 'fuchsia', 'Henderson LLC',
         '*****@*****.**', '(864)796-1576x58695', '5442'
     ]])
 def test_salay_gt_salary_lt(self):
     self.assertEqual(
         filter(self.test_data, salary__gt=5000, salary__lt=5005), [[
             'Angela Jenkins', 'gray', 'Bates-Hoffman',
             '*****@*****.**', '(132)955-1528', '5001'
         ]])
 def test_salary_gt(self):
     self.assertEqual(filter(self.test_data, salary__gt=5400), [[
         'Megan Taylor', 'fuchsia', 'Henderson LLC',
         '*****@*****.**', '(864)796-1576x58695', '5442'
     ]])
 def test_filter_one_name(self):
     self.assertEqual(filter(self.test_data, full_name='Diana Harris'), [[
         'Diana Harris', 'lime', 'Martin-Barnes', '*****@*****.**',
         '1-860-251-9980x6941', '5354'
     ]])
#!/usr/bin/env python
# encoding: utf-8
# Date: 2020/12/22
# file: time_interval.py
# Email:
# Author: 唐政 
import datetime
import query


get_result = print
time_interval=("日期区间", "r,[datetime]")

start_time = time_interval[0]
end_time = time_interval[1]
if start_time and end_time:
    if start_time > end_time:
        print(u'开始日期不能大于结束日期')
    query = query.filter(create_time__gte=start_time, create_time__lte=end_time + datetime.timedelta(days=1))
else:
    if start_time:
        query = query.filter(create_time__gte=start_time)
    if end_time:
        query = query.filter(create_time__lte=end_time + datetime.timedelta(days=1))