目前我正在使用laravel。当我想通过视图访问控制器时。我收到错误,找不到我的方法。
Action App \ Http \ Controllers \ RidesController @ edit未定义。 (视图: C:\瓦帕\ WWW \资源\视图\乘坐\ rides.blade.php)
但是当我尝试使用索引方法时,它的工作原理是否足够奇怪?我该怎么办?
这是我的rides.blade.php:
</thead>
<tbody>
<tbody>
@foreach($rides as $ride)
<tr>
<td><a href="{!! action('RidesController@edit',$ride->id) !!}">{!! $ride->id !!}</a> </td>
<td>{!! $ride->created_at !!}</td>
<td>{!! $ride->beginstand !!}</td>
<td>{!! $ride->eindstand !!}</td>
<td>{!! $ride->van !!}</td>
<td>{!! $ride->naar !!}</td>
<td>{!! $ride->bezoekadres !!}</td>
<td>{!! $ride->geredenroute !!}</td>
<td>{!! $ride->karakterrit !!}</td>
<td>{!! $ride->toelichting !!}</td>
<td>{!! $ride->kilometerszakelijk !!}</td>
<td>{!! $ride->kilometersprive !!}</td>
</tr>
@endforeach
</tbody>
我的路线控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\models\ridesregistration;
use App\Http\Requests\RideFormRequest;
class RidesController extends Controller
{
public function index()
{
$rides = ridesregistration::all();
return view("rides.rides",compact('rides'));
}
public function create()
{
return view('rides.create');
}
public function store(rideFormRequest $request)
{
$rides = new ridesregistration(array(
'beginstand' =>$request->get('beginstand'),
'eindstand' =>$request->get('eindstand'),
'van' =>$request->get('van'),
'naar' =>$request->get('naar'),
'bezoekadres' =>$request->get('bezoekadres'),
'geredenroute' =>$request->get('geredenroute'),
'karakterrit' =>$request->get('karakterrit'),
'toelichting' =>$request->get('toelichting'),
'kilometerszakelijk' =>$request->get('kilometerszakelijk'),
'kilometersprive' =>$request->get('kilometersprive')
));
$rides->save();
return redirect('/maakrit')->with('message','Rit '.$rides->id.' is succesvol aangemaakt.');
}
public function edit($id)
{
$rides = ridesregistration::whereId($id)->firstOrFail();
return view('rides.edit',compact('rides','rides'));
}
}
答案 0 :(得分:0)
根据laravel 5文件 http://laravel.com/docs/5.0/controllers
你应该使用命名空间和action()帮助
如果我们将深入挖掘\ Illuminate \ Routing \ UrlGenerator :: action
我们会看到:
profile.php
你的行动('RidesController @ index')是有效的,因为它是在路线中定义的。 并且你的行动('RidesController @ edit',$ ride-&gt; id)不起作用,因为它不在路线中。
在app / Http / routes.php中定义此控制器操作