Laravel 使用多数据库和 Model 表名去 s

模型 表名去掉s

有时候会遇到奇葩的要求

我们创建的模型都是继承
通过源码

Illuminate\Database\Eloquent\Model;

public function getTable()
{
  if (! isset($this->table)) {
  return str_replace(\
  '\\', '', Str::snake(Str::plural(class_basename($this)))\
 );\ }
  return $this->table;
}

没办法改了 调用Str::snake的 不可能去改Str::snake吧

public function setTable($table)\
{
  $this->table = $table;\

  return $this;
}

改这个就好了


直接发结果 这是最后的结果 以后所有模型都继承Models
$connection 是据库的链接配置 有时候一个项目要用几个库的时候

class Models extends  Model
{

    protected $connection = 'ymysql';

    //删除s 
    public function getTable()
    {
        $table = parent::getTable(); // TODO: Change the autogenerated stub
        return substr($table,0,-1);
    }

}

模型分库和去掉s已可以了 用查询构造器怎么分库?

//如果要用查询构造器 DB::table('q')->get();
还是用默认mysql的配置 想换成我们的其他库可以创建个服务提供者
laravel去掉模型s 和多库


控制器里面

laravel去掉模型s 和多库

本作品采用《CC 协议》,转载必须注明作者和本文链接
专心学习不瞎搞
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 1

复数末尾除 s 还有 es、y->ies,有可能单数本身就有s …… :smirk:

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
89
粉丝
108
喜欢
481
收藏
724
排名:108
访问:8.8 万
私信
所有博文
社区赞助商