dongyi6845 2017-02-14 00:04
浏览 56
已采纳

在LARAVEL中使用eloquent检索单行

i am using laravel 5.1 and want to retrieve a single row in the database then manipulate it after.

my current code is

$profiles = Profile::where('user_id', $this->user->user_id)
->where('profile_code', $this->user->profile_code)
->get();

foreach($profiles as $profile ){
$data['address'] = $profile->address;
}

why cant i do it like this?

$profiles = Profile::where('user_id', $this->user->user_id)
->where('profile_code', $this->user->profile_code)
->get();

$data['address'] = $profiles->address;

am i using a wrong function or something? thanks in advance.

  • 写回答

1条回答 默认 最新

  • dongshang6790 2017-02-14 00:20
    关注

    Try this:

    $data['address'] = $profiles[0]->address;
    

    When you are using get(), it returns an array of Std class object.

    In addition to retrieving all of the records for a given table, you may also retrieve single records using first. Instead of returning a collection of models, these methods return a single model instance:

    // Retrieve the first model matching the query constraints...
    $flight = App\Flight::where('active', 1)->first();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部