在下拉列表中,我有一些值,例如今天截止,明天到期,今年,本月。当用户从下拉列表中选择任何选项时。我想根据选项从表中获取数据。如果我今天选择到期,应该只显示今天的日期记录。如果我选择本月,只显示月度记录我无法理解我如何将字符串转换为日期。并与数据库进行比较。 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
答案 0 :(得分:0)
你不需要两个功能
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()