【发布时间】:2020-04-01 06:14:21
【问题描述】:
我无法创建帖子,我是初学者,如果我的问题听起来很愚蠢,请提前道歉
我似乎找不到任何错误
这是我的控制器:-
public function store(Request $request)
{
$data = request()->validate([
'title' => 'required',
'body' => 'required',
]);
auth()->user()->profile()->post()->create($data
);
return redirect('/h');
我确实需要在其中传入“user_id”
请提前帮助和谢谢
【问题讨论】:
-
您在填写表格吗?这是验证;本身没有记录错误,但是如果验证失败,
->validate()之后的代码将不会运行...简而言之,您的代码完全按预期工作。 -
我假设您检查了表单元素的名称以确保它们匹配?也可以使用 auth 对象在后端获取用户 id
-
$post = new Post($data); auth()->user()->profile()->post()->create($post);将创建帖子,我建议您在用户表和帖子表之间创建关系不要通过配置文件表。
-
@umefarooq 我已经在用户和帖子和个人资料之间创建了一个关系,我确实使用了你的 "$post = new Post($data); auth()->user() ->profile()->post()->create($post); will create post" 现在我遇到的错误是 Call to undefined method App\User::post()
-
@CodeJunkie 没有显示任何错误的原因是名称不正确,您能告诉我您希望我如何使用身份验证功能
标签: php laravel controller