2015-12-27 50 views
3

是否可以将route参数传递给控制器​​,然后传递给laravel中的视图?将请求参数传递给View - Laravel

示例;

我有下面的路线;

Route::get('post/{id}/{name}', '[email protected]')->name('blog-post'); 

我想通过{id}{name}我的看法所以在我的控制器

class BlogController extends Controller 
{ 
    // 
    public function post() { 

    //get id and name and pass it to the view 

     return view('pages.blog.post'); 
    } 
} 

回答

2

您可以使用:

public function post ($id, $name) 
{ 
    return view('pages.blog.post', ['name' => $name, 'id' => $id]); 
} 

甚至更​​短:

public function post ($id, $name) 
{ 
    return view('pages.blog.post', compact('name', 'id')); 
} 

编辑如果您需要返回它的JSON,你可以简单地做:

public function post ($id, $name) 
{ 
    return view('pages.blog.post', ['json' => json_encode(compact('name', 'id'))]); 
} 
+0

在我看来,我可以查看回声e数据这种方式'{{$ name}}'。我怎样才能把它传递给'JavaScript'?或者对其应用'json_encode' –

+0

您可以简单地将它传递给JavaScript,例如'',或者您可以使用' {{$ name}}'并使用JavaScript获得'id ='name''元素的值 –

+0

@ moh.ABK请看看我的编辑 –

2

会是这样的工作?

class BlogController extends Controller 
{ 
    // 
    public function post ($id, $name) { 

    //get id and name and pass it to the view 

     return view('pages.blog.post', ['name' => $name, 'id' => $id]); 
    } 
} 
相关问题