【发布时间】:2010-06-09 11:58:40
【问题描述】:
我正在尝试获取一个数组来填充 Counties 选择。如果我使用 find('all') 我可以获取数据,但是这个数组需要展平才能在 $form->input($counties) 的视图中使用。
如果我使用 find('list'),我似乎无法获得正确的数组 - 这是简单的县名数组。
我试过的是这样的:
$ops=array(
'conditions' => array(
'display' => '!=0',
'TO_DAYS(event_finish) >= TO_DAYS(NOW())'
),
'fields' => 'DISTINCT venue_county',
'order' => 'venue_county DESC'
);
$this->set('counties', $this->Event->find('list',$ops));
但它生成的 SQL 是:
SELECT Event.id, DISTINCT Event.venue_county FROM events AS Event WHERE display = 1 AND TO_DAYS(event_finish) >= TO_DAYS(NOW()) ORDER BY @ 987654329@DESC
这会产生错误,因为它首先在查询中插入 Event.id 字段 - 这是不想要的并导致错误。
在我的数据库中,我有一个包含场地地址的事件表,我真的不想为地址创建另一个表。
对于 find('list') 调用,我应该使用哪些选项?
【问题讨论】:
标签: cakephp