我想知道Laravel 4中是否有办法传递参数来从控制器中过滤。我已经看到很多Laravel 3的解决方案,但似乎在L4中它的工作方式不同。没有'过滤'方法。它只是在过滤器之前。我尝试使用'action:param'方法传递params但没有成功:)
答案 0 :(得分:0)
您可以在筛选器名称后面将参数作为字符串传递。使用:
分隔方法名称和参数。
public function __construct()
{
$this->beforeFilter('filterSomething:param');
}
如果您有许多参数,可以使用,
分隔参数。
$this->beforeFilter('filterSomething:param1,param2');
然后在app/filters.php
中定义过滤器逻辑。不要忘记在过滤方法中为传递的参数添加参数。
Route::filter('filterSomething', function($route, $request, $param1, $param2)
{
// Do something with your params.
});