View Laravel,从视图中获取控制器/操作的url

View Laravel,从视图中获取控制器/操作的url,view,laravel,blade,View,Laravel,Blade,在我看来,我不想硬编码一个网址,以防我改变它。。。有没有一种方法可以通过说我要使用这个控制器和这个动作来生成超链接url。。。比如: <a href = 'echo ActionLink("Logout", "Authentication");'>Logout</a> 我还发现了这个 <a href="<?php echo action('AuthenticationController@Logout'); ?>">Logout</a>

在我看来,我不想硬编码一个网址,以防我改变它。。。有没有一种方法可以通过说我要使用这个控制器和这个动作来生成超链接url。。。比如:

<a href = 'echo ActionLink("Logout", "Authentication");'>Logout</a>

我还发现了这个

<a href="<?php echo action('AuthenticationController@Logout'); ?>">Logout</a>

我还发现了这个

<a href="<?php echo action('AuthenticationController@Logout'); ?>">Logout</a>

您需要做的是能够以某种方式参考您的路线。有两种主要的方法:命名它们和引用控制器操作(即
Controller@action

然而,最好、最灵活的方法是命名路线。这意味着,如果重构控制器(例如更改类名或名称空间),则必须更改较少的代码(仅更改路由指向的位置,而不是每个视图引用所在的位置)

无论你用哪种方式,你都可以使用各种各样的助手来得到你想要的东西。以下各项均相当:

{{ link_to_route('route.name', 'Title) }}
{{ HTML::linkRoute('route.name', 'Title') }}
<a href="{{{ route('route.name') }}}">Title</a>
<a href="{{{ URL::route('route.name') }}}">Title</a>
{{link_to_route('route.name','Title)}
{{HTML::linkRoute('route.name','Title')}

类似地,您可以在这些帮助程序中使用“action”代替“route”,使用
Controller@action
指定路线的方法。

您需要做的是能够以某种方式引用您的路线。有两种主要的方法:命名它们和引用控制器操作(即
Controller@action

然而,最好、最灵活的方法是命名路线。这意味着,如果重构控制器(例如更改类名或名称空间),则必须更改较少的代码(仅更改路由指向的位置,而不是每个视图引用所在的位置)

无论你用哪种方式,你都可以使用各种各样的助手来得到你想要的东西。以下各项均相当:

{{ link_to_route('route.name', 'Title) }}
{{ HTML::linkRoute('route.name', 'Title') }}
<a href="{{{ route('route.name') }}}">Title</a>
<a href="{{{ URL::route('route.name') }}}">Title</a>
{{link_to_route('route.name','Title)}
{{HTML::linkRoute('route.name','Title')}

类似地,您可以在这些帮助程序中使用“action”代替“route”,使用
Controller@action
指定路线的方式。

是,这是一个辅助功能。根据需要,您可以灵活地使用逻辑更新视图。但是请使用blade,它确实是分离关注点的干净语法。是的,它是一个帮助函数。根据需要,您可以灵活地使用逻辑更新视图。但是,请使用blade,它对于分离关注点来说是非常干净的语法。