为什么Laravel路由无法按预期工作

时间:2018-12-03 11:18:25

标签: php laravel

在我的Route::get('/tripScheduler', 'trip_scheduler@index')->name('listTripSche'); Route::post('/tripScheduler/create', 'trip_scheduler@store')->name('saveTripSche'); Route::get('/tripScheduler/create', 'trip_scheduler@create'); Route::get('/tripScheduler/{sche}', 'trip_scheduler@show'); 内容下面

trip_scheduler.php

下面是我的控制器文件(<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Validator; use Redirect; use DB; use Illuminate\Support\Facades\Auth; class trip_scheduler extends Controller { public function __construct(){ $this->middleware('auth'); } public function show(trip_scheduler $sche){ print_r($sche); } }

mysite.com/tripScheduler/1

现在,当我访问print_r($sche)时,它应该向我显示id为1的数据库中的记录。但是,它为App\Http\Controllers\trip_scheduler Object ( [middleware:protected] => Array ( [0] => Array ( [middleware] => auth [options] => Array ( ) ) ) ) 提供了以下输出

{{1}}

我不确定我要去哪里。预先感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

您的表演功能如下:

use trip_scheduler;

    public function show(trip_scheduler $sche){
            print_r($sche);
        }

注意trip_scheduler是您的型号名称

OR

public function show($sche){
  $rsltTrip = trip_scheduler::find($sche);
                print_r($rsltTrip);
            }

答案 1 :(得分:0)

您正在键入提示您的控制器trip_scheduler $sche的原因,这就是print_r显示trip_scheduler控制器类的原因。尝试这种方式

class trip_scheduler extends Controller
{
     public function __construct(){
        $this->middleware('auth');
    }
   public function show($sche){
        $resp = YourModal::find($sche);
        return response($resp);
    }
}