我很难在此存储库方法中找到问题:
public function findByString($string)
{
return User::where('string', $string)->get();
}
它生成正确的SQL语句,我可以在Sequel Pro中运行,返回正确的结果。
但是,在Laravel(4.2)中调用此方法时,结果始终为空:
$this->user->findByString('something');
另一方面
$this->user->findOrFail(1);
始终返回正确的模型。
任何想法可能出错?
答案 0 :(得分:3)
return User::where('string', $string)->get();
将返回您可以迭代的集合。
如果您希望将第一个实例作为Eloquent模型返回,则可以执行以下操作:
return User::where('string', $string)->first();