Php 为什么即使post请求';正在成功地发送到数据库吗?
我在控制台中遇到了一个非常奇怪的错误,尽管我成功地在数据库中提交了数据,但还是出现了一个500错误,上面写着:Php 为什么即使post请求';正在成功地发送到数据库吗?,php,laravel,debugging,Php,Laravel,Debugging,我在控制台中遇到了一个非常奇怪的错误,尽管我成功地在数据库中提交了数据,但还是出现了一个500错误,上面写着: POSThttp://127.0.0.1:8000/posts 500(内部服务器错误) 我无法理解这种理解,因为它似乎不合逻辑 我做错了什么 这是邮局管理员: <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Post; class PostController exten
POSThttp://127.0.0.1:8000/posts 500(内部服务器错误)
我无法理解这种理解,因为它似乎不合逻辑
我做错了什么
这是邮局管理员:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Post;
class PostController extends Controller
{
public function create(Request $request, Post $post) {
// create post
$createdPost = $request->user()->posts()->create([
'body' => $request->body
]);
// return response
return response()->json($post->with('user')->find($createdPost->id));
}
}
我认为错误在您的回复行中。在单个模型对象中调用find()
方法,而不是在、或中调用。检查信号线路:
class PostController extends Controller
{
public function create(Request $request, Post $post) {
// ...
return response()->json($post->with('user')->find($createdPost->id)); // <----
}
}
returnresponse()->json($createdPost->load('user')代码>为我做的!非常感谢。注意:您忘记了响应中的()
@mrtest gald中的(
)帮助。PS:谢谢你的留言,我已经修改了代码;)
class PostController extends Controller
{
public function create(Request $request, Post $post) {
// ...
return response()->json($post->with('user')->find($createdPost->id)); // <----
}
}
return response()->json(Post::with('user')->find($createdPost->id));
// or even easier:
return response()->json($createdPost->load('user'));