0

我正在尝试创建一个页面,用户可以在其中搜索特定模型的所有记录,在我的例子中是专辑。在我使用的视图中:

    for ($i = 65; $i < 90; $i++) { 
        echo $html->link(chr($i), array('action' => 'letter_find', chr($i))) , ' - '; 
    }

打印出字母表中的每个字母,后跟一个“-”(谁能告诉我如何在最后一个字母后面不加“-”?)。用户单击一个字母并传递给 letter_find 操作,其中适当的字母作为变量传递。

这就是我卡住的地方。我不完全确定如何找到以所选字母开头的所有专辑。就像我在标题中所说的那样,我是一个完全的neub。这可能是一件很简单的事情?

提前致谢 :)

4

3 回答 3

2
foreach ( range( 'a', 'z' ) as $l ) {
    $links[] = $html->link($l, array('action' => 'letter_find', $l));
}

echo implode( ' - ', $links );
于 2011-05-19T17:40:26.337 回答
1

'Model.field LIKE' 。$信。'%' 是您在 find 中添加的条件

编辑

你可能也喜欢这个

找到可用的字母 - https://github.com/infinitas/infinitas/blob/beta/core/libs/models/behaviors/infinitas.php#L525

显示可用字母列表 - https://github.com/infinitas/infinitas/blob/beta/core/filter/views/helpers/filter.php#L140

于 2011-05-19T17:36:51.827 回答
0

我认为应该这样做,它会将 $results 作为数组返回:

$results = $this->model->find('all',array('conditions'=>array('model.field LIKE'=>$letter.'%')));
于 2011-05-19T17:51:46.860 回答