为什么什么都没有出现?拉拉维尔8?

时间:2021-06-06 15:31:50

标签: php laravel

web.php

<?php

use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});

Auth::routes();

Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');

Auth::routes();

Route::get('/pingu/{id}', [App\Http\Controllers\HomeController::class, 'pingu']);

Auth::routes();

Route::prefix('jobs')->group(function(){
    Route::get('create', function () {
        return "create";
    });


    Route::get('update', function () {
        return "update";
    });
});

TaskController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class TaskController extends Controller

{    public function create(){
            return view ('create');
    }
}

create.blade.php`

@extends('layouts.app')

@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">{{ __('Dashboard') }}</div>

                <div class="card-body">
                    <form action="{{route('jobs.store')}}" method="POST">
                        <input type="text" name="title" class="form-control">
                        <button type="submit" class="btn btn-success">Submit</button>
                    </form>
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

我确实在教程中做了什么,但它没有出现,请找到有效的修复程序。我使用 laravel 8 我试图配置:缓存清除然后工匠再次服务但不工作。如果你足够了解 laravel (8),你应该知道一切都做对了。

Picture 1

2 个答案:

答案 0 :(得分:3)

问题在于您的路线。

Route::prefix('jobs')->group(function(){
    Route::get('create', function () {
        return "create";
    });

这将返回单词 create。您最有可能真正想要的:

Route::prefix('jobs')->group(function() {
    Route::get('create', [App\Http\Controllers\TaskController::class, 'create']);
});

上面告诉 Laravel 在您的 create 上使用 TaskController 函数,它返回您的 create 视图。

您也不需要多次包含 Auth::routes()。将其包含在您的路线之前一次。

更新

对于Did not work;这是一个为您准备的黑白示例。

https://phpsandbox.io/n/round-morning-pqpk-dm8j1

答案 1 :(得分:0)

我认为您的意思不是 return "create";,而是 return view('create')。请检查并确认。