首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel编码在getRouteKey中不起作用(Hashids\Hashids)

Laravel编码在getRouteKey中不起作用(Hashids\Hashids)
EN

Stack Overflow用户
提问于 2020-10-06 18:36:01
回答 1查看 661关注 0票数 0

我正在尝试在我的URL中散列我的递增ID。我似乎没有正确的编码,我遵循了教程,这是没有帮助的。我在控制器中尝试了我在getRouteKey()中使用的代码,它似乎是在完成任务,并按预期对ID进行散列。

有人看到我做错什么了吗?

代码语言:javascript
复制
public function getRouteKey()
{
    $key = $this->getKey();
    $hashids = new \Hashids\Hashids('MySecretSalt', 5);
    return $hashids->encode($key);
}

更新,然后我使用绑定/解码如下;

代码语言:javascript
复制
    Route::model('property', Property::class);
    Route::bind('property', function ($value, $route) {
        $hashids = new \Hashids\Hashids('MySecretSalt', 5);
        return $hashids->decode(intval($value))[0];
    });

我的路线是;

代码语言:javascript
复制
Route::get(
    '/{property}/vvv/',
    'PropertyController@property_dashboard'
)->name('property.dashboard');
EN

回答 1

Stack Overflow用户

发布于 2020-10-08 04:31:46

我猜您使用的是javascript前端,而不是刀片,因此您无法访问Laravel路由函数。如果这是真的,并且您正在使用像Ziggy这样的东西来创建您的路由,那么您可以始终将hashid传递到ziggy的路由方法中。您可以在模型中创建一个hashid属性,然后返回到前端。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64231887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档