【问题标题】:Laravel Nova: Change RouteKeyName to UUIDLaravel Nova:将 RouteKeyName 更改为 UUID
【发布时间】:2019-06-02 19:35:15
【问题描述】:

有没有办法在 Laravel Nova 中将默认的 RouteKey Name 从 ID 更改为 UUID?

在我的默认模型上,这已经更改了,但我也想在 Laravel Nova 后端中更改它。

public function getRouteKeyName()
{
 return 'uuid';
}

【问题讨论】:

    标签: laravel laravel-5 routes uuid laravel-nova


    【解决方案1】:

    据我所知,这个问题的答案是

    也就是说,Laravel Nova 框架当然可以扩展以支持此功能。

    此代码是InteractsWithResources 关注点的一部分,其中有一个findModelKey 方法,它使用whereKey 方法,它与主键配对,而不是路由键。

    我确信我们可以请求 Laravel 框架向 Eloquent 查询构建器添加 whereRouteKey,然后建议 Nova 框架使用新的 whereRouteKey 而不是 whereKey 方法。

    除此之外,唯一的另一种选择是使用您自己的设计重新绑定 Nova 请求,这需要大量工作,坦率地说不是最佳实践。

    考虑到所有这些,我有点期待 Nova 开箱即用的这个功能,如果 Nova 违反了这一点,我会认为这是一个错误(因为这就是路由模型绑定的全部意义)。

    【讨论】:

      猜你喜欢
      • 2020-06-26
      • 1970-01-01
      • 2019-08-06
      • 1970-01-01
      • 2022-01-09
      • 2014-02-27
      • 1970-01-01
      • 2020-01-10
      • 2013-12-19
      相关资源
      最近更新 更多