Eloquent where - () - firstOrFail()不返回属性

时间:2014-02-25 15:44:57

标签: php laravel laravel-4 eloquent

我正在使用Laravel 4.1。我有一个表profiles和一个使用protected $ table ='profiles'扩展Eloquent的类Profiles。表中有一行,id = 1,first_name ='Admin'。我有以下代码:

$profile->where('id','=',1)->firstOrFail();

我没有遇到任何失败,但我也没有获得任何表属性。 $ profile-> first_name为null。我做错了什么?

3 个答案:

答案 0 :(得分:3)

当您使用 where()方法时,请将其与此类型

一起使用
$profile = Profile::where('id','=',1)->firstOrFail(); 

$profile = Profile::where('id',1)->firstOrFail(); 

如果您需要使用ID

进行搜索,请使用findOrFail()方法
$profile = Profile::findOrFail(1);

答案 1 :(得分:1)

您可以使用findfindOrFail方法,该方法可以自行搜索id列。

$profile->findOrFail($id);

// or using Facade

Profile::findOrFail($id);

答案 2 :(得分:0)

愚蠢的新手!我没有使用静态方法,而是尝试在实例化对象上使用这些方法。

Profile::find(1);

VS

$profile->find(1);