CakePHP 2:在$this>模型>find语句中使用存储的数组作为键



我的网站上有一个下拉菜单,允许多个选择:

$this->Form->input('systems', array('label'=>'System Assignments', 'empty'=>'', 'default'=>'', 'div'=>false, 'multiple'=>true, 'class'=>'chosen',
                            'options'=>$systems)); 

我的控制器中的此代码填充了 $systems 变量:

$systems = $this->Discrepancy->find('list', array('fields' => array('id', 'description'),
    'conditions'=>array('Discrepancy.deleted_record' => 0),
    'order'=>array('Discrepancy.display_order'=>'ASC')));
$this->set(compact('systems'));

当用户进行选择时,行 ID 将作为数组存储在名为 systems 的字段中名为 Users 的表中。

$system_string = implode(',', $this->request->data['User']['systems']);
 $this->request->data['User']['systems'] = $system_string;
systems
-------
 50,22

在我的编辑屏幕上,我希望能够通过在下拉列表中添加"value"参数来使用该值数组作为我的 ID 列表,以检索和显示用户的系统选择。

'value'=>array_key($chosen_systems);

如何在 $this->Model->find 语句中使用这些存储的值?

知道了。猜猜我需要先把它全部写出来。

将以下行放在 $this->Model->find 语句中:

'conditions'=>array('Discrepancy.id'=>explode(',',$var_for_systems_from_db))

最新更新