php - 如何通过路由直接传递变量

标签 php laravel routes

当我尝试在这样的路由中传递 var 时,出现错误

<a  href="{{route('canvas',['size'=>1000])}}">
...
</a>

我这样传递 View

    public function canvas($size){
        return view('main.canvas')->with($size);
    }

这是我在 web.php 中使用的路由:

Route::get('canvas',[CustomAuthController::class,'canvas'])->name('canvas');

我得到的错误是这样的: ...\CustomAuthController::canvas() 的参数太少,第 54 行 ...\Controller.php 中传入的参数为 0,而预期为 1

由于某种原因,似乎没有读取该参数,我只尝试了路线('canvas',1000)但仍然不起作用

最佳答案

您应该将 with() 与访问器一起使用。

Syntax: ->with('variable-name', $data)


您的路线应该是。(您应该允许 URL 中的属性)

Route::get('canvas/{size}', 'CustomAuthController@canvas');

在 Controller 中

public function canvas($size){
    return view('main.canvas')->with('size',$size);
}

在 Blade 中你可以

{{ $size }}

关于php - 如何通过路由直接传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74980243/

相关文章:

php - PayPal IPN 停止工作 - curl 35 错误

php - 文本中单词的出现次数(以及相似词)

php - 为什么我在 url 中输入验证码文件路径它返回一个二进制文件而不是图像文件

php - 警告 : mysqli_connect(): Unknown MySQL server host

php - Laravel 生成 URL 函数

ruby-on-rails - 我的复杂路线的 Controller 规范中没有路线匹配

node.js - 如何在 Hapi 17 中抽象路由

asp.net-mvc-2 - 未指定区域时,ASP.NET MVC 2 RC 2返回特定于区域的 Controller

javascript - 在后台重新加载页面而不使用alert()(使用sweetalert代替)

sql - Eloquent 更新方法更改 created_at 时间戳