【问题标题】:Best way to route an anchor tag in Laravel [closed]在 Laravel 中路由锚标记的最佳方法 [关闭]
【发布时间】:2018-08-11 03:31:16
【问题描述】:

我有一个包含任务列表的页面,我在每个任务上放置了一个锚标记,它将把用户带到:/tasks/{{id}}

这可行:<a href="/tasks/{{$task->id}}"><h4>{{$task->title}}</h4></a>

我想知道是否有更好的方法来解决这个问题?

这是我的控制器的样子:

public function show($id) {
   $task = Task::find($id);
   return view('layouts.show')->with('task', $task);
}

我的 web.php 文件:

Route::resource('tasks', 'TasksController');

【问题讨论】:

  • 锚标签表示网站/任务#id-1 ??
  • 那些看起来不像锚标签:www.domain.com/home#the-anchor-tag
  • 这种方法有什么你不喜欢的地方吗?
  • 如果您想查看已设置的路由名称,可以从命令行运行php artisan route:list

标签: php laravel anchor


【解决方案1】:

如果您不想一直硬编码网址,请使用route name

因为您使用的是Route::resource('tasks', 'TasksController');

https://laravel.com/docs/5.6/controllers#resource-controllers

tasks.show 是路由名称

{{ route('tasks.show', $task) }}

所以在某一天,如果你想改变路由的 uri,只需编辑 web.php

你也可以使用路由模型绑定

public function show(Task $task) {
   return view('layouts.show', compact('task'));
}

这个命令可以帮你制作控制器和模型

php artisan make:controller TestController --resource --model=Models\Test

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-08
    • 2021-11-29
    • 1970-01-01
    • 2016-06-04
    • 2011-09-04
    • 2015-08-14
    • 2018-07-01
    • 2020-02-12
    相关资源
    最近更新 更多