将最近保存的数据从控制器发送到 Laravel 中的 DOM

Send recently saved data from controller to DOM in Laravel

在我的网站上,用户可以回复状态。

$reply = Status::create([
        'body' => $replyText,
    ])->user()->associate(Auth::user());

status->replies()->save($reply);

请求通过AJAX发送。如果请求成功,将在 DOM 上自动生成回复,无需页面重定向。

这很酷,但我也希望用户能够 delete/edit 回复他们刚刚做出的回复!为此,我需要新创建回复的状态 table 中的 ID。

类似...

$reply = Status::create([
        'body' => $replyText,
    ])->user()->associate(Auth::user());

$status->replies()->save($reply);

$replyID = ID of the status I just saved to database;
return response()->json($replyID);

更新:

基于 Eddy 回复的新代码:

        $reply = Status::create([
        'body' => $replyText,
    ])->user()->associate(Auth::user());

    $status->replies()->save($reply);
    $id = $reply->id;
    return response()->json($id);

没有return任何东西。但是,如果我执行 $id = "test",JSON 响应将是 "test"。所以它看起来不像是工作。

$reply = Status::create(...); //returns the created object with ID
$id = $reply->id;

您可以 return $id 或只是 return 对象本身。

return response()->json($reply); //or $id

只需 console.log() 回复即可查看您 return 并使用它。