0

这听起来可能有点基本(而且可能是),但我已经尝试了几个小时了,要么我需要从编码中休息一下,要么就是不会让步。

我有一个活动记录变量,它从模型中带来数据库条目:

$variable = Model::model()->findAll();

所以我的视图文件中有 $variable 可用,我想检查结果中是否存在特定条目。我正在使用 中可用条目的主键$variable,但我似乎无法让它工作。

检查给定条目是否包含在视图文件而不是控制器的该变量中的正确方法是什么?

PS:我不想遍历结果集,这对我的应用程序来说不是很有效。

谢谢。

4

2 回答 2

0

如果我说对了:

  • 事实上,最好不要在视图文件中包含这样的代码。
  • 如果您被迫使用 CActiveRecord.fin*() 方法,请考虑使用 findByPk($pk)。如果它返回 null - 没有这样的记录。
  • 考虑让您的模型扩展PcBaseArModel,因为该类具有“checkExists($pk)”方法,在您需要执行的检查中看起来很自然。这个基类还有其他好处 - 检查它的文档。
于 2012-09-14T05:31:28.540 回答
0

试试这个代码:

$data = Post::model()->findAllBySql("select * from tbl_post where id=".$data->id);

或者

$post=Post::model()->find(array(
    'condition'=>'postID=:postID',
    'params'=>array(':postID'=>$data->id)
));
于 2012-09-14T07:30:10.417 回答