目前我有帖子表,每个帖子都有一个ID。
暂时只存在一个帖子,id id = 92。
如果我执行以下代码,我不会得到错误,而是使用 id=92 发布:
$post = NewsPost::findFirst(['id' => 1]);
var_dump($post->id); // gives 92
似乎是很奇怪的逻辑.. 可以使用什么方法来按 id 检索帖子,如果没有这样的实体,那将返回 false/throw 异常?
试试这个:
$post = NewsPost::findFirst("id = 1");
或者
$post = NewsPost::find(
array(
"conditions" => "id = ?0",
"bind" => array(0 => 1)
)
);
我用:
$instance = Model::findFirst($id);
其中 $id 是主键。
采用
NewsPost::findFirst(['id = 1']);
或者
NewsPost::findFirst(1)
你应该使用:
NewsPost::findByid(1);
其中“id”可以替换为模型的任何属性。例如:
NewsPost::findByDescription('Description');
NewsPost::findByyourprop(yourpropval);
然后您可以通过 count() 返回值count($result)
来确定您是否收到任何记录。
注意:我还发现字符串搜索不区分大小写。