【发布时间】:2015-11-11 20:26:41
【问题描述】:
我通过 composer 安装了mcamara/laravel-localization。这工作正常。我主要通过http://url-to-laravel/en 使用它,在域根上添加语言区域en。
此外,我有一个使用 mitulgolakiya/laravel-api-generator 的脚手架,也通过 composer 安装。
这也很好用。我为Order 创建了一个脚手架。当我现在将脚手架与本地化结合起来时,我遇到了麻烦。
调用http://url-to-laravel/en/orders 会导致:
ErrorException in UrlGenerator.php line 296: Route [orders.create] not defined.
(View: /var/www/apps/foobar/l5/resources/views/orders/index.blade.php)
调用http://url-to-laravel/orders 工作正常。
我想我必须调整如何在刀片中调用路由或如何配置路由本身,但我不知道如何?
如何让脚手架路线与本地化一起工作?
app/Http/routes.php
Route::group(['prefix' => LaravelLocalization::setLocale()], function() {
Route::get('/', function () {
return view('start');
});
});
Route::group(['prefix' => LaravelLocalization::setLocale()], function() {
Route::resource('orders', 'OrderController');
Route::get('orders/{id}/delete', [
'as' => 'orders.delete',
'uses' => 'OrderController@destroy',
]);
});
资源/视图/订单/index.blade.php
@extends('layout')
@section('content')
<div class="container">
@include('flash::message')
<div class="row">
<h1 class="pull-left">Orders</h1>
<a class="btn btn-primary pull-right" style="margin-top: 25px"
href="{!! route('orders.create') !!}">Add New</a> <!-- ERROR LINE -->
</div>
<div class="row">
@if($orders->isEmpty())
<div class="well text-center">No Orders found.</div>
@else
@include('orders.table')
@endif
</div>
@include('common.paginate', ['records' => $orders])
</div>
@endsection
【问题讨论】:
标签: php localization routes laravel-5