话说为什么 Elqument 模型名和默认表名要弄成单复数这么麻烦呢?

1.我们平常命名数据库表名也没有统一地加复数后缀的习惯吧?这样设置有什么好处呢?
2.如果我想去掉这个转换,应该怎么改源码呢?(找了半天没找到源码对应的位置。。。)

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
最佳答案

重写模型的 getTable 方法 应该 就可以了,,,

5年前 评论
poker_face (楼主) 5年前
讨论数量: 4

重写模型的 getTable 方法 应该 就可以了,,,

5年前 评论
poker_face (楼主) 5年前
  1. 我们平常命名数据库表名也没有统一地加复数后缀的习惯吧?这样设置有什么好处呢?

可以把数据表看作 Eloquent 模型的集合,每条数据都是 Eloquent 模型的一个实例,所有实例的集合就构成了这张表的全部数据。
复数也算是更加语义化的表述吧。Eloquent 模型简介

  1. 如果我想去掉这个转换,应该怎么改源码呢?(找了半天没找到源码对应的位置。。。)

这个只能说多看文档。Eloquent 模型约定

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Flight extends Model
{
    /**
     * 与模型关联的表名
     *
     * @var string
     */
    protected $table = 'my_flights';
}
5年前 评论
poker_face (楼主) 5年前

@chen05_20 如果之前用的 TP5 之后的版本,模型的使用方式是有相似之处的。 TP6.0 模型设置

<?php
namespace app\model;

use think\Model;

class User extends Model
{
    // 设置当前模型对应的完整数据表名称
    protected $table = 'think_user';
}
5年前 评论
poker_face (楼主) 5年前

至于单复数,全看 作者爱好。。
避免一些英文复数并不是简单地在后缀加个 sies 等之类的,怕有人不会) ,建议建表统一用单数形式

5年前 评论
poker_face (楼主) 5年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!