Сравнете датата на базата данни с въведеното от потребителя

В падащото меню имам някои стойности като Край днес, Край утре, Тази година, Този месец. Кога потребителят ще избере опция от падащото меню. Искам да извлека данните от таблицата според опцията. ако избера дължим днес, трябва да се покаже запис на дата само днес. ако избера този месец, трябва да се покаже само месечен запис. Не мога да разбера как мога да конвертирам низа в дата. и сравнете с базата данни. def abc(): Модел

db.define_table('Birthday',
   Field('Name',label='name'),
   Field('assignment','text'),
   Field('bdate','date')

Преглед

function showcnf()
{
var x=document.forms["cnf"]["sub"].value;
if (x==null || x=="")
  {
  alert("Please select the value ");
  return false;
  }

</script> 


<form name="cnf" action="{{=URL('default','subquery')}}" method="post" onsubmit="return showcnf()" >
<select name="sub">
  <option value="Due Today">Due Today</option>
  <option value="Due Tommarow">Due Tomorrow</option>
  <option value="Due This Month">Due This Month</option>
     <option value="Due This Month">Due This Month</option>


</select>
<input type="submit" value="Submit">
</form>
{{=grid}}

В контролера съм използвал 2 функции. Първо за приемане на входа и второ, което се опитвам да сравня. но не мога да го направя. нямам идея за това. отидох да хвърля следната връзка

http://pleac.sourceforge.net/pleac_python/datesandtimes.html

не намерих нещо за мен.

Контролер

def abc():

    subject=request.vars.sub
    if subject == 'Due Today':
        redirect(URL(r=request,f='jmd' ))

    if subject == 'Due Tommarow':
        redirect(URL(c='default',f='jmd'))
    if subject == 'Due This Month':
        redirect(URL(c='default',f='jmd'))


    response.flash = T("its working !")

    return dict()




def jmd():
    table=SQLFORM.grid(db.Birthday,create=False,deletable=False,editable=False,csv=False)
    response.flash = T("done")
    return dict(grid=table)

може ли някой да ми помогне в това Благодаря Rohit Raj Sharma


person Rohit Raj    schedule 20.01.2014    source източник


Отговори (1)


нямате нужда от две функции

def abc():

subject=request.vars.sub
if subject == 'Due Today':
    queries = (db.Birthday==datetime.date.today())

if subject == 'Due Tommarow':
    queries = ...
if subject == 'Due This Month':
    queries = ...


response.flash = T("its working !")
table=SQLFORM.grid(queries,create=False,deletable=False,editable=False,csv=False)

return dict()
person user1474424    schedule 03.04.2014