You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Nova如何关闭仪表盘表名自动复数化及自定义表名

Laravel Nova 表名复数化相关问题解决方案

基础问题解决

关闭全局pluralization(复数化)功能

打开项目根目录下的config/nova.php配置文件,找到pluralization配置项,将值设置为false即可全局关闭Nova的自动复数转换逻辑:

'pluralization' => false,

自定义仪表盘显示的表名

不需要修改全局配置的情况下,可以直接在对应Nova资源类中单独指定显示名称,完全脱离实际数据表名自定义:

// 例如在 app/Nova/About.php 中添加以下配置
// 仪表盘、菜单等处显示的复数名称
public static $label = 'About';
// 单个资源项显示的单数名称
public static $singularLabel = 'About';

后续报错(找不到表、URL仍为复数)解决

你遇到的报错是因为仅修改了Nova侧的显示标签,没有同步修改Eloquent模型和Nova资源的核心配置,且Nova的查询逻辑走绑定的Eloquent模型,不会读取你自定义Controller中的表名配置,按以下两步修改即可:

1. 手动指定Eloquent模型的实际表名

找到对应的数据模型文件(例如app/Models/Donate.php),在类中添加$table属性指定你实际使用的数据库表名,覆盖Laravel默认的自动复数表名逻辑:

class Donate extends Model
{
    // 填写你实际存在的数据库表名
    protected $table = 'donate';
}

2. 手动指定Nova资源的URI路径

找到对应的Nova资源类文件(例如app/Nova/Donate.php),添加$uriKey属性指定资源的访问路径,覆盖Nova默认的自动复数URI逻辑:

class Donate extends Resource
{
    // 填写你想要的访问路径,和实际表名保持一致即可
    public static $uriKey = 'donate';
}

修改完成后可执行php artisan config:clear清理配置缓存,确保配置生效。


内容的提问来源于stack exchange,提问作者Artur Müller Romanov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 06:57:02