php - 创建新帖子时如何重定向到我的新帖子 | 拉拉维尔
问题描述
当我在 Laravel 中创建新帖子时,我想重定向到我的新帖子
但我得到一个 ArgumentCountError
Too few arguments to function App\Http\Controllers\ArticlesController::store(), 1 passed in C:\xampp\htdocs\forum\vendor\laravel\framework\src\Illuminate\Routing\Controller.php on line 54 and exactly 2 expected
我该如何解决?谢谢
网页.php
<?php
Route::resource('articles', ArticlesController::class);
Route::get('/', [ArticlesController::class, 'index'])->name('root');
Route::resource('articles.comments', CommentsController::class);
文章控制器.php
public function store(Request $request, $id) {
$content = $request->validate([
'title' => 'required|max:30',
'content' => 'required|min:10'
]);
//限制只有透過登入才能CREATE文章
auth()->user()->articles()->create($content);
return redirect('articles/'. $id)->with('notice', '文章發表成功!');
}
创建.blade.php
<form class="container-fluid" action="{{ route('articles.store') }}" method="post">
解决方案
检查你的store()
方法。我认为它应该只得到Request $request
.
例子
public function store(Request $request) {
$content = $request->validate([
'title' => 'required|max:30',
'content' => 'required|min:10'
]);
//限制只有透過登入才能CREATE文章
$article = Article::create($content); // static is not best practice, only for example
return redirect('articles/'. $article->id)->with('notice', '文章發表成功!');
}
但是在使用 create 方法之前,您需要指定一个可填充的或受保护的。检查文档
推荐阅读
- r - 如何将 R 图附加到 csv 文件中的给定列?
- python - Python 3 Chrome Selenium 保持下载的 Jar 文件
- python - 如何检查字符串是否包含数组中的任何元素
- apache-spark - 从 AWS Glue 写入 Amazon DynamoDB 时如何尊重版本号?
- javascript - NoSuchMethodError:在 null 上调用了方法“[]”。I/flutter(23049):接收者:null I/flutter(23049):尝试调用:[](“conversationID”)
- r - R 使用一个字符向量来保存 bind_rows 的 data.frames 的名称
- python-3.x - 使用 cartopy 创建重复地图
- powerbi - Power BI 饼图交互式
- architecture - 设计可扩展的系统以显示当前正在查看房产的用户
- python - 退出呼叫的退出代码 768