cakephp选择列表显示ids而不是文本

Sha*_*eer 5 php cakephp cakephp-1.3

我正在使用cakephp 1.3生成表单我正在使用hasOne和belongsTo关系创建一个选择列表

my models: image, category
Run Code Online (Sandbox Code Playgroud)

类别有很多图片

图像所属类别

类别表有两列 id and category_name

我在做

$this->set('categories', 
           $this->Image->Category->find(
                                        'list',
                                         array( 'order' => 'category_name ASC' )
                                       )
          ); //to generate the select list
Run Code Online (Sandbox Code Playgroud)

到目前为止这么好,只剩下一个问题了,生成的选择列表显示了类别的id而不是category_name作为选项文本,我知道这不是cakePHP的错,但我需要知道解决方案

请帮忙.

PS如果我不清楚这个问题,请告诉我

Dun*_*zzz 6

您需要在类别模型中定义displayField属性,以便CakePHP可以正确地确定要显示为标签的字段.您的类别模型中的此代码将为您修复:

var $displayField = 'category_name';
Run Code Online (Sandbox Code Playgroud)

或者,将category_name字段重命名为'name'或'title'(我会这样做,显然类别表中的'name'字段将成为该类别的名称).