【问题标题】:Route not found error in Laravel 4 with form on Home page在 Laravel 4 中找不到路由错误,主页上有表单
【发布时间】:2014-07-01 04:32:13
【问题描述】:

我在 hello.blade.php 文件的主页上制作了一个表单,表单值

{{ Form::open(array('route' => 'home/addguest', 
                        'class' => "form-horizontal")) }}

我在HomeController 中定义了一个名为addGuest() 的方法,它在数据库中添加值并发送电子邮件。

我在主页上遇到错误

错误异常 路线 [home/addguest] 未定义。 (查看:/var/www/laravel/app/views/hello.blade.php)

Route.php 有

Route::post('Home/addGuest', array('uses' => 'HomeController@addGuest'));

Route::get('/home', function()
{
    return View::make('home');
});

我应该在表单属性中定义什么值来发布这些数据并将其保存在数据库中?
我应该更改表单发布目标还是更改homecontroller 方法?

【问题讨论】:

    标签: php laravel-4


    【解决方案1】:

    在 route.php 中

    Route::post('Home/addGuest', array('uses' => 'HomeController@addGuest'));
    

    应该是

    Route::post('Home/addGuest', array('as' => 'addguest', 'uses' => 'HomeController@addGuest'));
    

    “as”是您在表单中引用的路线的命名。请务必将 Forms 路由也更新为“addguest”。

    【讨论】:

    • Jimmie,我试过你的路线,但还是不行,它说路线没有定义!!我只在主页上使用此表单,并没有创建任何控制器/路由。我需要那个吗??
    • 嗯,你需要 HomeController 和一个你说你有的名为 addGuest 的方法。这应该是 routes.php 中的一个路由。尝试不带斜线的名称。像 'as' => 'addguest' 并在你的表单代码 'route' => 'addguest' 中做同样的事情。
    • 嗯,一件奇怪的事情。你说这段代码在 hello.blade.php 中?然后引用一个名为 home 的视图。那应该是 View::make('hello')
    猜你喜欢
    • 2016-10-20
    • 2014-12-29
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 2021-11-23
    • 1970-01-01
    • 2013-03-13
    • 2014-12-21
    相关资源
    最近更新 更多