Php 404 laravel中没有显示错误,如何调试/修复此更新路由?
我已经创建了一个与任务模型(多个任务到1个项目模型)有很多关系的项目,并设置了一个按钮来说明任务是否已完成(1或0) 当我点击按钮更新数据库时(如视图所示),我收到的是404,而不是laravel通常抛出的常见错误屏幕,检查日志也没有错误 我已经附上了404的代码和网络错误,但我真的不知道我在找什么如果有人能用404错误给我指出正确的方向,或者如果下面的代码中有错误,我将不胜感激 查看Php 404 laravel中没有显示错误,如何调试/修复此更新路由?,php,laravel,http-status-code-404,laravel-routing,Php,Laravel,Http Status Code 404,Laravel Routing,我已经创建了一个与任务模型(多个任务到1个项目模型)有很多关系的项目,并设置了一个按钮来说明任务是否已完成(1或0) 当我点击按钮更新数据库时(如视图所示),我收到的是404,而不是laravel通常抛出的常见错误屏幕,检查日志也没有错误 我已经附上了404的代码和网络错误,但我真的不知道我在找什么如果有人能用404错误给我指出正确的方向,或者如果下面的代码中有错误,我将不胜感激 查看 <form method="POST" action="/tasks/{{ $task->id }
<form method="POST" action="/tasks/{{ $task->id }}">
@method('PATCH')
@csrf
<label for="completed">
<input type="checkbox" name="completed" onChange="this.form.submit()">
{{ $task->description }}
</label>
</form>
迁移
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTasksTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('tasks', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger('project_id');
$table->string('description');
$table->boolean('completed')->default(false);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('tasks');
}
}
删除路由中的$:'/tasks/{$task}'
路由应仅包含字符串形式的变量名,因为它尚未在变量中键入提示。删除路由中的$:“/tasks/{$task}”
路由应该只包含字符串形式的变量名,因为它还没有输入到变量中。Omg 2个小时以来,我一直在为这个而发疯。。。我爱你,哈哈。泰!天哪2个小时我都为这件事发疯了。。。我爱你,哈哈。泰!
Route::patch('/tasks/{$task}', 'ProjectTasksController@update');
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTasksTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('tasks', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger('project_id');
$table->string('description');
$table->boolean('completed')->default(false);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('tasks');
}
}
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Task extends Model
{
protected $fillable = [
'project_id', 'description', 'completed'
];
public function project()
{
return $this->belongsTo(Project::class);
}
}