首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yii crud scaffolding -外键列名而不是id

Yii crud scaffolding -外键列名而不是id
EN

Stack Overflow用户
提问于 2013-04-28 00:58:07
回答 1查看 842关注 0票数 1

在phpmyadmin中,我在mysql数据库中创建了两个表。

例如- product表

代码语言:javascript
复制
tbl_product
id - int, pk, autoincrement
name - varchar 20
price - decimal
category_id - int, fk, notnull

tbl_category
id - int, pk, autoincrement
name - varchar(20)

从上面可以看到,产品将包含category_id的值。

我已经在gii中为tbl_product自动生成了模型。

我正在尝试为tbl_product模型创建crud类,但是当我这样做时,我希望将tbl_category.name显示为一个标签和下拉列表,而不是tbl_product.category_id中包含的id。

这个是可能的吗?

EN

回答 1

Stack Overflow用户

发布于 2013-04-29 01:51:09

在模型(关系部分)中:

代码语言:javascript
复制
'category' => array(self::BELONGS_TO, 'tbl_category', 'category_id')

在视图中,例如:

代码语言:javascript
复制
...isset($model->category) ? $model->category->name...

有一件事需要注意--如果你打算一次展示大量具有相关类别名称的产品,你应该使用$criteria->with = 'tbl_category'; $criteria->together = true'。如果这样做,- yii将构建查询来一次获取所有需要的数据。否则,yii将要求数据库为您显示的每个帖子提供分类名称。

如果我错了,请纠正我,但我记得它是这样工作的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16254700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档