【发布时间】:2014-09-05 08:32:07
【问题描述】:
在 ZF2 中,我可以这样创建路线:
'member-login-after-expired-session' => array(
'type' => 'segment',
'options' => array(
'route' => '/loginAgain',
'defaults' => array(
'controller' => 'Foo\Controller\Bar',
'action' => 'someMethod',
'activity' => 'login',
'reason' => 'expired-session',
),),),
可以在 domain.com/loginAgain 访问此路由,并将传递两个参数“activity”和“reason”它们不在 url 中。我可以通过以下方式在分配的 zf2 控制器中访问这些参数以及任何其他参数:
$this->params('activity')
$this->params('reason')
如何在 Laravel 4.2 中实现这一点?
到目前为止,我在 (http://laravel.com/docs/routing) 处阅读的文档表明所有参数都必须通过实际 url 传递,这不是我想要的。我试过这个:
Route::get
(
'/loginAgain',
array
(
'as' => 'loginAgain',
'uses' => 'BarController@someMethod',
),
array
(
'activity' => 'login',
'reason' => 'expired-session',
)
)
附带的控制器如下:
class BarController extends BaseController
{
public function someMethod($activity, $reason)
{
echo $activity;
echo $reason;
...
但是,我得到了缺少参数的错误。我到底应该做什么工匠?
【问题讨论】:
-
这与zf2无关,删除标签因为zf2用户将无法回答这个Laravel问题。
-
不知道有没有使用 laravel 经验的 zf2 程序员能回答这个问题?特别是因为原始路线特定于 zf2 而所需的路线特定于 laravel 4?
-
嗯,这就像“嘿,我在 X 中发现了一个很酷的功能,我可以在 Y 中做到这一点”。关键是您需要 Y 位专家,而不是 X。您为 Laravel 用户很好地解释了路由功能,因此他们能够理解您的问题 :)
-
我需要 Y 位有 X 经验的专家。原来的路由结构不是通用的,它是 X 特定的。所需的路由结构希望是特定于 Y 的。我试图避免出现潜在答案被排除在外的情况,因为只允许 Y 答案