028-86922220

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

laravel之增强Schema数据迁移的示例分析-创新互联

这篇文章将为大家详细讲解有关laravel之增强Schema数据迁移的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联长期为近千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为象州企业提供专业的网站制作、成都网站制作,象州网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。

再重构公司的项目的时候呢,每次创建一个迁移类新增一个数据表的时候,
都需要指定新增 deleted_at, created_at, updated_at, last_operater, last_operater_id
这五个字段,分别记录着 每一行的 删除时间,新增时间,修改时间,最后操作人名,最后操作人id,

因此,能不能让他自动创建这些字段,而无需我自己来手动复制粘贴代码呢?有时候还忘记了呢!!

然而 以下对 第二次试验的解说。

1. 下图,再 app/Facade下新增了一个Schema类, 定义了两个 获取mysql的链接的方法,该方法,从容器中获取db_extra的对象

laravel之增强Schema数据迁移的示例分析

2. 接着 再 app/providers/下新增一个db的服务器提供者,用于定义 $app['db_extra']服务容器 是怎么获取这个对象的

laravel之增强Schema数据迁移的示例分析

3. 分析下图二的其中的内容。->single 单例实例一个 工厂类,用来生产db_extra类的, 如图三,这个工厂类放到以下图中

laravel之增强Schema数据迁移的示例分析

4. 接着分析下 这个工厂类,进行继承系统的生产工厂的类,进行修改其功能, 如这一次,如果是连接的mysql服务连接对象呢,我就让他实例化我自己定义的msyql连接对象, 如图4

laravel之增强Schema数据迁移的示例分析

5. 接下来,再这个MysqlExtraConnection.php类中,我重新覆盖父类的方法,当执行命令新增迁移类的时候,按照我定义的迁移模板来创建一个迁移文件

laravel之增强Schema数据迁移的示例分析

6. 接下来,定义我们自己想默认新增的字段吧, 如图6

laravel之增强Schema数据迁移的示例分析

laravel之增强Schema数据迁移的示例分析

7. 接下来,定义一个叫 make:app_migration的命令, 注意下面第二张图 MigrationCreatorExt 依赖注入了自己新增的类,这个类用来干嘛的呢?用来输出字符窜到 新增的迁移文件中,

laravel之增强Schema数据迁移的示例分析

laravel之增强Schema数据迁移的示例分析

8. 有创建模板,修改模板,如下图

laravel之增强Schema数据迁移的示例分析

9. 其中在create.stub这个模板呢,我默认让他调用我定义的Schema类,并且 注释中备注了,默认增加的字段

laravel之增强Schema数据迁移的示例分析

10. 大功告成,配置起来有点麻烦,但是确实挺好扩展的, 还有什么更好的方法吗,谢谢评论里讨论,嘿嘿

关于“laravel之增强Schema数据迁移的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


本文名称:laravel之增强Schema数据迁移的示例分析-创新互联
分享URL:http://www.tsicrk.com/article/dcoghi.html

其他资讯

让你的专属顾问为你服务

4.1454s