2015-08-03 73 views
0

在我的控制,使该过滤器与ID和名称cakephp3选择输入

$categories = $this->Posts->Categories->find('list', ['limit' => 200])->select(['id', 'category_name']); 

在我看来

echo $this->Form->select('category_id', $categories->toArray()); 

但是,在阵列返回的数据仅仅是代码(在这种情况下, ID)。如何实现一个选择与id和category_name?应该手动做?

谢谢...

回答

1

你不应该在这种情况下使用select。请使用displayField来告诉它您需要category_name,或者在list调用的选项中指定keyFieldvalueField参数,如the manual所示。

$this->Posts->Categories->displayField('category_name'); 
$categories = $this->Posts->Categories->find('list', ['limit' => 200]); 

$categories = $this->Posts->Categories->find('list', [ 
    'limit' => 200, 
    'keyField' => 'id', 
    'valueField' => 'categoryName' 
]); 
+0

感谢....正常工作!!!! – user3854612