Laravel链接到没有定义路线的行动

时间:2015-03-18 12:17:39

标签: php laravel laravel-4 controller routes

我可能误解了路由助手的链接,但如果没有路由文件中设置的路由,它就无法正常工作。

{{ link_to_action('UserController@loginWithFacebook', 'Facebook Login in', $parameters = array(), $attributes = array('class' => 'btn btn-primary fb-login-btn')); }}

当我链接到URI时,旧路由是:

    Route::get('loginuser2', array('uses' => 'UserController@loginWithFacebook'));

但是,我认为link_to_action是对该方法的直接调用。删除路由文件中的上述链接后,我没有为控制器方法定义路由错误。

任何想法如何避免这种情况?

2 个答案:

答案 0 :(得分:4)

如果路线本身不存在,则无法链接到某个操作。必须定义路线。

所以你需要保持定义路线,然后link_to_action()将继续工作。在后端,它会查看您的路线以找到与该操作相同的路线 - 并使用该URL。

没有办法避免它。

答案 1 :(得分:-1)

link_to_action用于链接到控制器。你应该使用

link_to生成html链接

echo link_to(' foo / bar',$ title,$ attributes = array(),$ secure = null);