samubra
- samubra 回复了话题 admin方法中怎么使用联合查询
实际上我觉得你没说清楚你的条件,照你上面给出的例子看,A表为产品表,里面的author为用户id,一个用户可以有多个productname;B表你没说清楚是什么,因为你只列了2个,并且都不同,我可以认为你是用户表,一个用户只有一行记录,所以这样的话关系就很明显了,A与B的关系为一对多(我上面没分析清楚),那么你应该在B表中添加relation,用has_manay;在A表中添加relation,用belongs_to
- samubra 回复了话题 admin方法中怎么使用联合查询
也可以在A表中添加relation,
用has_manay function getStatus($num) { switch ($num){ case 0:$status="第一步";break; case 1:$status="第二步";break; case 2:$status="完成";break; } return $status; } function getPrice($money){ return $money."元"; }
这连个方法为什么不写到控制器中?
方便多了- samubra 回复了话题 一个联表的查询的问题,希望大家指教一下
return array( 'plinks'=>array(self::HAS_MANY, 'ta_robinson_product_link', 'fdid'), );
是不是应该放到
ta_robinson_datamaker
模型中啊?$models = ta_robinson_datamaker::model()->with('plinks')->findAll();
查询的是ta_robinson_datamaker
表中的数据,你说只有一行,当然就是只有一条结果了,
如果你要查询ta_robinson_product_link
表中关联的数据应该用$models ->plinks
,这应该是一个数组 好像还可以是arrayProvider哦
是不是这样哦
public function getDataBegin() { return $this->dateBegin; } public function setDataBegin($value) { $this->dateBegin=$value; }
array( 'name'=>'status', 'type'=>'raw', 'value'=>array($this,'getStatus')//从$this->getStatus中获取值 ),
在controller中:
public function getStatus($data, $row) { //$data为当前数据模型(用$data->url和$data->status获取值),$row为当前所处的行数 switch ($data->status){ case 0: return CHtml::link('处理', $data->url); case 1: return "关闭"; default: return CHtml::link('无定义', $data->url); } }
应该知道怎么做了吧?
TNND,客户端代码有个mimeDetect,被设置为’none',害得我找了半天!
- samubra 回复了话题 用YII做的系统 IE内核无法登陆
去掉
exit;
试试