【发布时间】:2019-12-01 21:15:50
【问题描述】:
我正在尝试在 Laravel 中开设一门课程,并尝试设置一个简单的 CRUD 方法,但我卡在了 Create 上。我在 Laravel 中有一个错误,我不明白如何解决它,我试图清除路由缓存但不起作用。我看了一些关于这个错误的答案,但我不确定它们是否匹配,因为我在 web 文件中使用 post 方法。 Snippet
控制器
namespace App\Http\Controllers;
use App\Todo;
use Illuminate\Http\Request;
class TodosControler extends Controller
{
public function index()
{
return view('todos.index')->with('todos', Todo::all());
}
//za pojedine
public function show($todoId)
{
//dd($todoId); //diedump isto kao die u PHPu
// $todo = Todo::find($todoId); onda ovo kad slozimo samo stavimo u return
return view('todos.show')->with('todo', Todo::find($todoId));
}
public function create()
{
return view('todos.create');
}
public function store()
{
$data = request()->all();
$todo = new Todo();
$todo->name = $data['name'];
$todo->description = $data['description'];
$todo->completed = false;
$todo->save();
return redirect('/todos');
}
}
网页文件
use App\Http\Controllers\AboutController;
use Illuminate\Support\Facades\Route;
Route::get('/', function () {
return view('welcome');
});
Route::get('todos' , 'TodosControler@index');
Route::get('todos/{todo}' , 'TodosControler@show');
Route::get('new-todos' , 'TodosControler@create');
Route::post('store-todos' , 'TodosControler@store');
表格
<form action="/store-todos" method="POST">
@csrf
<div class="form-group">
<input type="text" class="form-control" name="name" placeholder="Name">
</div>
<div class="form-group">
<textarea name="description" cols="5" rows="5" class="form-control" placeholder="description"></textarea>
</div>
<div class="form-group text-center">
<button type="submit" class="btn btn-success">Create todo</button>
</div>
</form>
【问题讨论】:
-
php artisan cache:clearphp artisan route:cachephp artisan optimize你试过了吗? -
你运行命令
composer install了吗?