laravel 5 urlgenerator,带有Form :: open route with Route Annotations

时间:2014-11-14 18:53:39

标签: laravel routes composer-php illuminate-container laravel-annotations

我在 路线注释 中使用 Laravel 5 。 (app \ Http \ route.php将被自动删除)。有关路线注释的视频,您可以查看https://www.youtube.com/watch?v=sOvgw40Dg4A

我使用 php artisan make:controller ContactController

构建 ContactController.php

store() 功能中,我添加 返回视图('pages.contact'); 重新输入其他联系人数据。

当我在我的网页上给出以下脚本时\ 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' 所以我可以使用{!! Form :: !!}

然后执行以下命令:

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'])!!} 而不是 {!! Form :: open(['url'=>'contact'])!!}

PS: 我在Windows 7 Pro 64bit上使用XAMPP。 我已经读过:http://laravel.io/forum/10-11-2014-forms-doesnt-work-in-laravel-5

对于我在路线注释上的步骤,在App \ Providers \ RouteServiceProvider.php,我在

中添加我的控制器
protected $scan = [
  'App\Http\Controllers\HomeController', // for http://localhost/myl5/
  'App\Http\Controllers\ContactController',  //  for http://localhost/myl5/contact
];

0 个答案:

没有答案