我正在学习Laravel 5,发现了一些我不理解的东西。如果我把这个代码放到路线上,那么一切都很顺利:
Route::bind('addresses', function($value, $route) {
return App\Address::find($value)->first();
});
但没有它,我得到了:
哎呀,好像出了什么问题。 1/1 ReflectionException in Container.php第736行:类地址不存在
错误。
我的路线:
路由::模型('地址','地址'); Route :: resource('addresses','AddressesController');
我的AddressesController:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Address;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class AddressesController extends Controller
{
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
$addresses = Address::all();
return view('addresses.index', compact('addresses'));
}
/**
* Show the form for creating a new resource.
*
* @return Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param Address $address
* @return Response
*/
public function show(Address $address)
{
return view('addresses.show', compact('address'));
}
我的问题是,如果我没有直接在我的路由中绑定ID值,为什么我会收到错误代码。 Laravel说,使用RESTful资源控制器,我自动获得带有ID的地址/ {地址},但似乎没有。任何的想法?谢谢你的帮助。
答案 0 :(得分:1)
Route::model
获取完整的班级名称。 Route::model('addresses', 'App\Address');