laravel Route可以没有URL吗?

时间:2017-06-30 12:55:58

标签: laravel laravel-routing

我对Laravel有更多的一般性问题。 我是新手。

我已经创建了一个表单:

{!! Form::model($tourists, ['action' => 'TouristController@store', 'id' => 'passengers_form', 'class' => 'inline' ] ) !!}

{!! Form::close()!!}

它输出:" Action App \ Http \ Controllers \ TouristController @ store未定义。"

虽然 TouristController 和方法商店确实存在。 我尝试了这个,然后发现当我将它添加到我的web.php文件(之前版本中的routes.php)时它可以工作:

"Route::post('/addtourist', 'TouristController@store');"

好的,我明白了,为了让方法有效,我应该把它添加到" web.php" (路由)。

但是如果我有一种方法可以让我在没有' url的情况下工作呢?

例如,我想将信息从上面的表格(或任何其他视图)发送到' TouristController @ store'直接,不使用' / addtourist'?

喜欢

 Route::justMakeMethodWorkWithoutAnyURL('TouristController@store');

这可能吗?

很抱歉,如果我的问题让自己感到困惑。我想更深入地了解Laravel。

3 个答案:

答案 0 :(得分:1)

这是一个古老的问题,但是我相信这就是您想要的:

action('TouristController@store');

来自documentation

  

action函数为给定的控制器操作生成一个URL。

答案 1 :(得分:0)

我想你可以试试这个

Route::post('/addtourist', 'TouristController@store')->route('tourist');

{!! Form::open(['route' => 'tourist', 'id' => 'passengers_form', 'role' => 'form', 'method' => 'post','class'=>'inline']) !!}

希望这对你有用!

答案 2 :(得分:0)

我认为你想要的只是编写一个类,然后将它包含在你的php文件中以调用它的方法。

根据定义,路由用于将URL映射到某个逻辑处理程序。在您的表单示例中,您必须将数据发布到URL,因为这是html表单的作用。