我搜索了很多问题。但我在app.blade.php
文件中找不到与获取请求的参数值相关的任何内容。
网址 http://localhost:8000/project/dashboard/1
我希望在用户登录后获取此参数值。以下是AuthController
中的代码。
if ($this->auth->attempt($request->only('email', 'password')))
{
return redirect()->route('dashboard', ['id' => 1]);
}
现在,我可以轻松地在控制器中获取此参数。
public function getDashboard($id){
dd($id);
}
但是,我很难在app.blade.php文件中获取此ID。那么,我怎么能在这里得到它?
答案 0 :(得分:2)
你可以这样做:
Route::getCurrentRoute()->getParameter('id')
参见 Illuminate \ Routing \ Route.php
/**
* Get a given parameter from the route.
*
* @param string $name
* @param mixed $default
* @return string|object
*/
public function getParameter($name, $default = null)
{
return $this->parameter($name, $default);
}
答案 1 :(得分:0)
我对laravel没有很多经验,但我认为这应该有效。
<?php
$x = 15;
while($x >=5 ) {
if($x != 10) echo $x . "<br>";
$x--;
}
?>`
答案 2 :(得分:0)
虽然你可以使用这个来获取route参数的值
Route::getCurrentRoute()->getParameter('id')
但基本上你违背了MVC架构的原则。理想情况下,您的观点应该与此类内容无关。您应该在控制器中获取参数值,并将其传递给视图。
将数据传递给视图
// Using conventional approach
$view = view('greeting')->with('name', 'Victoria');
// Using Magic Methods
$view = view('greeting')->withName('Victoria');
在上面的示例中,变量$ name可供视图访问,并包含Victoria。
如果您愿意,可以将数据数组作为第二个参数传递给视图助手:
$view = view('greetings', $data);
以这种方式传递信息时,$ data应该是具有键/值对的数组。在您的视图中,您可以使用相应的密钥访问每个值,例如{{$ key}}(假设$ data [&#39; key&#39;]存在)。
Laravel文档 您可以阅读有关使用Laravel Views
的更多信息MVC的基础 作为Defined by Wschools,
MVC是一个使用MVC(模型视图控制器)设计构建Web应用程序的框架:
经验法则
因此输入的处理应该通过控制器来完成。虽然有时候我们倾向于忽视设计原则,但从长远来看,它们往往会让ALOT付出代价。