Thanks everyone. Time for me to call it a night. I'll give it a run tomorrow morning.
-Jim On Tue, Oct 3, 2017 at 9:46 PM, Limedrop <russ...@holtrd.com> wrote: > What about something like this... > > import datetime > now = datetime.datetime.now() > the_future = now + datetime.timedelta(days=30) > query = ((db.employee.dob.month() == now.month()) & > (db.employee.dob.day() > now.day())) > query |= ((db.employee.dob.month() == the_future.month()) & > (db.employee.dob.day() < the_future.day())) > rows = db(query).select() > > A bit rough and not tested, but the point is that you can use > datetime.month() as part of the DAL query. > > > On Wednesday, 4 October 2017 12:48:52 UTC+13, Jim S wrote: >> >> I don't think that will do it. The date stored in the database would be >> 10/15/1980, or 10/21/1993. >> >> Those should both show a birthday in the month of August. But, I don't >> want just a matching month. I want it for the next 30 days. >> >> So, on December 15th I should see all birthdays between December 15th and >> January 15th regardless of what year the birthday is in. >> >> Jim >> >> >> On Oct 3, 2017 6:22 PM, "Limedrop" <rus...@holtrd.com> wrote: >> >>> It just works. For example: >>> >>> import datetime >>> now = datetime.datetime.now() >>> last_date = now + datetime.timedelta(days=settings.days_to_include) >>> query = (db.person.interview_datetime < last_date) >>> rows = db(query).select() >>> >>> >>> On Wednesday, 4 October 2017 10:38:38 UTC+13, Jim S wrote: >>>> >>>> Stifan >>>> >>>> I use that method to build dates quite often. However, I don't know >>>> how to translate that into a DAL query. >>>> >>>> -Jim >>>> >>>> On Tuesday, October 3, 2017 at 4:18:30 PM UTC-5, 黄祥 wrote: >>>>> >>>>> perhaps you can use python datetime module. >>>>> e.g. >>>>> import datetime >>>>> print (datetime.date.today() + datetime.timedelta(1*365/12)). >>>>> isoformat() >>>>> >>>>> or >>>>> >>>>> from datetime import date >>>>> from dateutil.relativedelta import relativedelta >>>>> six_months = date.today() + relativedelta(months=+1) >>>>> >>>>> The advantage of the latest approach is that it takes care of issues >>>>> with 28, 30, 31 days etc. >>>>> >>>>> best regards, >>>>> stifan >>>>> >>>> -- >>> Resources: >>> - http://web2py.com >>> - http://web2py.com/book (Documentation) >>> - http://github.com/web2py/web2py (Source code) >>> - https://code.google.com/p/web2py/issues/list (Report Issues) >>> --- >>> You received this message because you are subscribed to a topic in the >>> Google Groups "web2py-users" group. >>> To unsubscribe from this topic, visit https://groups.google.com/d/to >>> pic/web2py/-mKujQj0oB4/unsubscribe. >>> To unsubscribe from this group and all its topics, send an email to >>> web2py+un...@googlegroups.com. >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to a topic in the > Google Groups "web2py-users" group. > To unsubscribe from this topic, visit https://groups.google.com/d/ > topic/web2py/-mKujQj0oB4/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > web2py+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.