我的问题非常简单。我有一个名为'articles'的表,我想得到前三篇文章命令DESC。但是如果他们的出版日期比现在更早或等于今天,我也希望显示这些文章。所以我的请求中还有另一个条件。我的cakephp代码如下:
$this->set('lastArticles', $this->Article->find('all', array(
'conditions' => array('Article.visible' => true),
'Article.publication_date <= ' => date('Y-m-d'),
'order' => array('Article.creation_date DESC', 'Article.id DESC'),
'limit' => 3
)));
但问题是即使发布日期&gt;的文章也是如此。日期('Y-m-d')这些也显示出来!有没有人有想法?提前感谢您的回答。
答案 0 :(得分:1)
看起来你的publication_date条件不在conditions数组中。您的代码应如下所示:
$this->set('lastArticles', $this->Article->find('all',
array(
'conditions' => array(
'Article.visible' => true,
'Article.publication_date <= ' => date('Y-m-d')
),
'order' => array(
'Article.creation_date DESC',
'Article.id DESC'
),
'limit' => 3
)));
这里有一些额外的缩进和空白是你的朋友。
答案 1 :(得分:0)
See this
$conditions = array(
'Article.visible' => true,
'Article.publication_date <= ' => date('Y-m-d')
);
$order = array('Article.creation_date DESC', 'Article.id DESC');
$lastArticles = $this->Article->find('all', array(
'conditions' => $conditions,
'order' => $order,
'limit' => 3
);
$this->set('lastArticles', $lastArticles);