如何在Laravel中返回最后添加的id

问题描述 投票:0回答:3

我使用laravel添加数据的控制器代码如下所示。 $request是全球宣布的

public function createEnquiry(Request $request){
    //my table is enquirydetails
    DB::table('enquirydetails')->insert(
        ['name' =>$request->input('name'),
        'address' =>$request->input('address') ,
        'phone' =>$request->input('phone') ,
        'created_at' => date("Y-m-d H:i:s") ,
        'updated_at' => date("Y-m-d H:i:s"),
        ]); 
}

我需要在添加到db之后返回id。此代码是Lumen api db插入代码。 Web路径是

$router->group(['prefix' => 'Enquiry','namespace' => 'Enquiry'], 
function($router){
    $router->post('new','EnquiryController@createEnquiry');
});
php laravel
3个回答
6
投票

使用insertGetId方法插入记录然后检索ID:

$id = DB::table('tableName')->insertGetId(
          ['name' => $request->input('name'),
           'address'=> $request->input('address')]
);
print_r($id);

欲了解更多详情,请阅读Manual


1
投票

首先,您应该为enquirydetails表创建一个Model。它可能是这样的:

EnquiryDetail.php - 模特儿

在进行插入时,您可以轻松地执行此操作

$detail = EnquiryDetail::create([
    'name' =>$request->input('name'),
    'address' =>$request->input('address') ,
    'phone' =>$request->input('phone') ,
    'created_at' => date("Y-m-d H:i:s") ,
    'updated_at' => date("Y-m-d H:i:s"),
]);

如果成功,您可以访问新插入的ID,如下所示:$detail->id


0
投票

请将Db::分配给变量示例$result,然后打印出来

print_r($result);
© www.soinside.com 2019 - 2024. All rights reserved.