我正在使用Laravel 5和Route Annotations。(app\Http\route.php 将被自动删除)。有关路线注释的视频,您可以查看https://www.youtube.com/watch?v=sOvgw40Dg4A
我用php artisan make:controller ContactController构建了一个ContactController.php
在store()函数中,我添加了return view('pages.contact'); 重新输入另一个联系人数据。
当我在 pages\contact.blade.php 上提供以下脚本时:
{!! Form::open(['route'=>'contact.store']) !!}
它总是返回如下错误:
ErrorException in UrlGenerator.php line 237: Route [contact.store] not defined. (View: D:\www\mycontact\resources\views\pages\contact.blade.php)
指的是:
public function route($name, $parameters = array(), $absolute = true) { if ( ! is_null($route = $this->routes->getByName($name))) { return $this->toRoute($route, $parameters, $absolute); } throw new InvalidArgumentException("Route [{$name}] not defined."); }
但是当我变成:
{!! Form::open(['url'=>'contact']) !!}
它工作正常。
如何修复我的 laravel 以便我可以使用该路线?
以下是我所做的事情:
composer require illuminate/html
在 config\app.php ,我添加:'Form' => 'Illuminate\Html\FormFacade'所以我可以使用 {!! 形式:: !!}
然后我执行以下命令:
composer update
composer dump-autoload
php artisan dump
php artisan clear-compiled
php artisan dump-autoload
php artisan optimize
php artisan route:clear
php artisan route:scan
php artisan route:list
所以......如何在我的刀片中修复我的 laravel,我可以使用{!! Form::open(['route'=>'contact.store']) !!}而不是{!! 表单::open(['url'=>'contact']) !!} ?
PS:我在 Windows 7 Pro 64bit 上使用 XAMPP。我已经读过: http: //laravel.io/forum/10-11-2014-forms-doesnt-work-in-laravel-5
对于我在 Route Annotations 上的步骤,在 App\Providers\RouteServiceProvider.php 中,我将控制器添加到
protected $scan = [
'App\Http\Controllers\HomeController', // for http://localhost/myl5/
'App\Http\Controllers\ContactController', // for http://localhost/myl5/contact
];