簡體   English   中英

將參數傳遞給Laravel中的控制器

[英]Pass a Parameter to a Controller in Laravel

我想將objectid傳遞給laravelcontroller 基本上,我有一個頁面來顯示與book有關的信息。 用戶可以選擇將themes添加到該書。 下面的行是他們單擊以打開創建主題form

<a href="{{action('ThemeController@create')}}" class="btn btn-primary">Add Theme</a>

ThemeController方法:

public function create(){
        $books = Book::all();
        return View::make('theme.create', compact('books'));
    }

目前,這會彈出一個表格,其中包含我所有書籍的下拉列表。 我寧願只在傳遞給該表單之前傳遞用戶所在的書的id ,而是使用它。 有什么辦法可以做到嗎? 我還包括了routes.php文件:

Route::model('book', 'Book');
//Show pages
Route::get('/books', 'BookController@index');
Route::get('book/create', 'BookController@create');
Route::get('book/edit/{book}', 'BookController@edit');
Route::get('book/delete/{book}', 'BookController@delete');
Route::get('book/view/{book}', 'BookController@view');
////Handle form submissions
Route::post('book/create', 'BookController@handleCreate');
Route::post('book/edit', 'BookController@handleEdit');
Route::post('book/delete', 'BookController@handleDelete');


//Themes
Route::model('theme', 'Theme');
Route::get('/themes', 'ThemeController@index');
Route::get('theme/create', 'ThemeController@create');
Route::get('theme/edit/{book}', 'ThemeController@edit');
Route::get('theme/delete/{book}', 'ThemeController@delete');
Route::get('theme/view/{book}', 'ThemeController@view');
Route::post('theme/create', 'ThemeController@handleCreate');
Route::post('theme/edit', 'ThemeController@handleEdit');
Route::post('theme/delete', 'ThemeController@handleDelete');

您仍然可以使用常規的$ _GET方法。 在您的路線上:
book/create您只需索取即可。 book/create?book_id=xxyy然后在您的控制器中創建函數

public function create(){
    $bookId = Input::get('book_id');
    $books = Book::all()->where('book_id' => $bookId);
    return View::make('theme.create', compact('books'));
}

請注意:我已經有一段時間沒有使用過Laravel了,不要相信那個elequont查詢:P ..我只是在這里放一個理論上的“哪里”。

在這里http://laravel.com/docs/requests#basic-input ,您會注意到以下幾點:

“您不必擔心用於請求的HTTP動詞,因為所有動詞都以相同的方式訪問輸入。”

因此,無論您使用的是get,put,post還是Delete,無論包在標題中的是什么,您都可以使用Input Class查找。

編輯
只需添加,就根本不需要修改路線。 這只是GET請求中的簡單GET參數。 就像在其他應用程序中一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM