2017-06-30 85 views
0

我有更多關於Laravel的一般問題。 我是新手。laravel Route有沒有網址?

我創建了一個表格:

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

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

它輸出的: 「行動應用程序\ HTTP \控制器\ TouristController @未定義的商店。」

雖然TouristController和方法存儲確實存在。 我想這個那個,然後發現,它的工作原理,當我加入這個我web.php文件(在以前的版本routes.php文件):

"Route::post('/addtourist', '[email protected]');" 

好吧,我明白了,爲了使工作方法,我應該把它添加到「web.php」(路線)。

但是如果我有一種方法,我想在沒有'url'的情況下工作?

例如,我想直接從上面的表單(或從任何其他視圖)發送信息到'TouristController @ store',而不是使用'/ addtourist'?

水木清華像

Route::justMakeMethodWorkWithoutAnyURL('[email protected]'); 

這可能嗎?

對不起,如果我的問題是自己混淆。我想深入瞭解Laravel。

回答

0

我想你可以試試這個

Route::post('/addtourist', '[email protected]')->route('tourist'); 

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

希望這對你的工作!

+0

謝謝)但是想知道在聲明路由時URL是否是必需參數? ,因爲我認爲可能會出現您希望使用任何URL的方法。 (例如,該方法僅用於將新用戶添加到數據庫中)。 我已經爲此方法'保留'/ addtourist',但可能會出現這種情況,我會將此網址用於其他目的,並忘記它已被保留。 對不起,如果它聽起來像廢話:) –

+1

您可以使用不同的方法相同的URL。例如,Route :: post('/ addtourist','abcController @ abc')'和'Route :: get('/ addtourist','abcController @ bcd')'。但是,一旦這兩個方法都使用這個,那麼你不能再使用'Route :: post('/ addtourist','xyzController @ abc')'或者'Route :: get('/ addtourist','xyzController @ abc ')'在你的情況下,你可以使用'Route :: post('/ addtourist','TouristController @ store')'。現在你不能再使用'Route :: post('/ addtourist','TravelsController @ store')'。希望你能理解!! :) –

0

我想你想要的只是編寫一個類,然後將它包含在你的php文件中來調用它的方法。

根據定義,使用路由將URL映射到某個邏輯處理程序。在您的表單示例中,您必須將數據發佈到網址,因爲這是HTML表單所做的。