在default.ctp中我想添加两个下拉列表。 一个是2010年到2020年的年度清单,另一个是1月到12月的月份清单。
我该怎么做?
我必须为此创建表单吗?喜欢
echo $this->Form->create...
echo $this->Form->end..
或者我可以添加两个下拉列表和搜索按钮吗?
如果我点击“搜索”按钮,它将转到帖子/存档操作,并在帖子表的“已创建”列中显示那些“年 - 月”的帖子。
有人可以为此发布示例代码吗?
这是我到目前为止所尝试的: $ listyear = array();
for($i=2010;$i<=2020;$i++){
array_push($listyear,$i);
}
$track=array(31,28,31,30,31,30,31,31,30,31,30,31);
$months=array(1=>'January',
2=>'February',
3=>'March',
4=>'April',
5=>'May',
6=>'June',
7=>'July',
8=>'August',
9=>'September',
10=>'October',
11=>'November',
12=>'December');
echo $this->Form->create('Post', array('url' => array('controller' => 'posts', 'action' =>'listarchive')));
echo $this->Form->input('Select year',array('type'=>'select','options'=>$listyear) );
echo $this->Form->input('Select month',array('type'=>'select','options'=>$months) );
echo $this->Form->end('Search');
答案 0 :(得分:1)
是的,您需要创建一个表单(或使用JavaScript,但普通的HTML表单更容易,更可靠)。您可以使用Form::year()
创建一年的下拉列表和Form::month()
几个月:http://book.cakephp.org/view/1416/year和http://book.cakephp.org/view/1417/month。
如果您在创建表单时遇到问题,最好发布您尝试过的内容并询问具体问题。表格在Cookbook(http://book.cakephp.org/view/1383/Form)中有相当广泛的内容。
看到代码后编辑:你可以做这样的事情让Cake完成工作:
echo $form->create( 'Post', array( /* whatever you need */ ) );
echo $form->year( 'year', 2010, 2020 );
echo $form->month( 'month' );
echo $form->end( 'Search' );