1使用zh-CN.json 自定义配置文件

这是 Laravel 提供的本地化特性,使用 __() 函数来辅助实现。按照约定,本地化文件存储在 resources/lang 文件夹中,为 JSON 格式。在 config/app.php 文件中,我们设置了:

对应翻译文件就是 resources/lang/zh-CN.json ,需新建此文件:

resources/lang/zh-CN.json

2使用中文语言包

会有很多人会遇到翻译 Laravel 自带模板的问题,所以我们无需自己一个个去翻译,这种通用的问题找找扩展包来处理即可。

我们将使用 Laravel Lang 项目来实现,此项目支持了 52 个国家的语言,使用以下命令安装:

完成上面的操作后,将项目文件 config/app.php 中的下一行

替换为:

Laravel Lang 同自定义语言包一样,都是根据 config/app.php 里 locale 的选项来选择语言的。

值得一提的是,如果你想修改扩展包提供的语言文件,可以使用以下命令发布语言文件到项目里:

 

MySQL有两种常用的引擎类型:MyISAM和InnoDB。目前只有InnoDB引擎类型支持外键约束。InnoDB中外键约束定义的语法如下:

 

例如:

 

InnoDB也支持使用ALTER TABLE来删除外键:

 

 

CASCADE
在父表上update/delete记录时,同步update/delete掉子表的匹配记录

SET NULL
在父表上update/delete记录时,将子表上匹配记录的列设为null (要注意子表的外键列不能为not null)

NO ACTION
如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作

RESTRICT
同no action, 都是立即检查外键约束

SET NULL
父表有变更时,子表将外键列设置成一个默认的值 但Innodb不能识别

 

NULL、RESTRICT、NO ACTION
删除:从表记录不存在时,主表才可以删除。删除从表,主表不变
更新:从表记录不存在时,主表才可以更新。更新从表,主表不变
CASCADE
删除:删除主表时自动删除从表。删除从表,主表不变
更新:更新主表时自动更新从表。更新从表,主表不变
 
SET NULL
删除:删除主表时自动更新从表值为NULL。删除从表,主表不变
更新:更新主表时自动更新从表值为NULL。更新从表,主表不变

 

外键约束属性: RESTRICT | CASCADE | SET NULL | NO ACTION  外键的使用需要满足下列的条件:

1. 两张表必须都是InnoDB表,并且它们没有临时表。

2. 建立外键关系的对应列必须具有相似的InnoDB内部数据类型。

3. 建立外键关系的对应列必须建立了索引。

4. 假如显式的给出了CONSTRAINT symbol,那symbol在数据库中必须是唯一的。假如没有显式的给出,InnoDB会自动的创建。

如果子表试图创建一个在父表中不存在的外键值,InnoDB会拒绝任何INSERT或UPDATE操作。如果父表试图UPDATE或者DELETE任何子 表中存在或匹配的外键值,最终动作取决于外键约束定义中的ON UPDATE和ON DELETE选项。InnoDB支持5种不同的动作,如果没有指定ON DELETE或者ON UPDATE,默认的动作为RESTRICT:

1. CASCADE: 从父表中删除或更新对应的行,同时自动的删除或更新自表中匹配的行。ON DELETE CANSCADE和ON UPDATE CANSCADE都被InnoDB所支持。

2. SET NULL: 从父表中删除或更新对应的行,同时将子表中的外键列设为空。注意,这些在外键列没有被设为NOT NULL时才有效。ON DELETE SET NULL和ON UPDATE SET SET NULL都被InnoDB所支持。

3. NO ACTION: InnoDB拒绝删除或者更新父表。

4. RESTRICT: 拒绝删除或者更新父表。指定RESTRICT(或者NO ACTION)和忽略ON DELETE或者ON UPDATE选项的效果是一样的。

5. SET DEFAULT: InnoDB目前不支持。

外键约束使用最多的两种情况无外乎:

1)父表更新时子表也更新,父表删除时如果子表有匹配的项,删除失败;

2)父表更新时子表也更新,父表删除时子表匹配的项也删除。

前一种情况,在外键定义中,我们使用ON UPDATE CASCADE ON DELETE RESTRICT;后一种情况,可以使用ON UPDATE CASCADE ON DELETE CASCADE。

 

当执行外键检查之时,InnoDB对它照看着的子或父记录设置共享的行级锁。InnoDB立即检查外键约束,检查不对事务提交延迟。

要使得对有外键关系的表重新载入转储文件变得更容易,mysqldump自动在转储输出中包括一个语句设置FOREIGN_KEY_CHECKS为0。这避免在转储被重新装载之时,与不得不被以特别顺序重新装载的表相关的问题。也可以手动设置这个变量:

mysql> SET FOREIGN_KEY_CHECKS = 0;

mysql> SOURCE dump_file_name;

mysql> SET FOREIGN_KEY_CHECKS = 1;

如果转储文件包含对外键是不正确顺序的表,这就以任何顺序导入该表。这样也加快导入操作。设置FOREIGN_KEY_CHECKS为0,对于在LOAD DATA和ALTER TABLE操作中忽略外键限制也是非常有用的。

InnoDB不允许你删除一个被FOREIGN KEY表约束引用的表,除非你做设置SET FOREIGN_KEY_CHECKS=0。当你移除一个表的时候,在它的创建语句里定义的约束也被移除。

如果你重新创建一个被移除的表,它必须有一个遵从于也引用它的外键约束的定义。它必须有正确的列名和类型,并且如前所述,它必须对被引用的键有索引。如果这些不被满足,MySQL返回错误号1005 并在错误信息字符串中指向errno 150。

 

 

 

 

 

1.生成命令文件

2.编辑生成文件app/Console/Commands/MakeTransformer.php

3.创建模板文件app/Console/Commands/stubs/transformer

4.使用命令 ,可以没有后缀

文件路径app/Transformers/{name}.php

1.编辑html

2.JavaScript 脚本

3.laravel php config/filesystems.php 编辑配置文件,添加uploads

在controller编辑代码

 

 

1. 安装

为了保险期间先创建一个分支

安装扩展包

1.浏览器打开分享链接

2.在www.baidu后插入wp

3选择好要下载的文件,点击会看见下载地址,在此之前,先做一下配置否则加速不会生效

4安装,谷歌插件,然后点击插件,选择opera-> opera 12.14

5.返回第三部的页面点击下载即可,速度最高可以实现2M—3M,比百度的100kb强太多,亲测有用

CUDA和CuDNN一般都是结伴而行,如果需要CUDA,必然会需要CuDNN。

 

CuDNN是什么?

NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如加州大学伯克利分校的流行caffe软件。简单的,插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是调整性能,同时还可以在GPU上实现高性能现代并行计算。

 

CuDNN如何安装?

Cudnn的官网下载地址为:https://developer.nvidia.com/cudnn

点击Download CuDNN 即可开始下载。但是对于第一次下载的人来说,没有这么容易。因为下载这个软件是需要账号的。如果你没有登录账号会跳转到登录页面。

没账号的选择Join 注册账号,有账号的自然是选择Login登录账号。

输入邮箱和密码既可登录.

登录之后就可以开始下载了。下载的时候记得选择正确的版本。比如我们电脑上安装的是CUDA9.0 ,那么就选择Download cuDNN v7.5.0     。 点击后需要选择对应的操作系统。

下载之后的文件名类似上图。双击可以打开。

打开后里面主要是3个目录,一个文件。 三个目录分别是bin、include、lib

选中上面的三个文件复制到C:\Program Files\NVIDIA GPU Computin Toolkit\CUDA\v9 , 覆盖该目录下原有的文件,就算安装成功了。

有些教程可能会还会教你设置环境变量,一般来说环境变量是自动设置,全程都无需手动设置。

 

需要注意的点:

官网默认值显示了4个版本,如果想要下载更早的版本请点击底部的Archived CuDNN Release。

比如网上流传的 OpenFaceswap 需要的CUDA版本虽然是CUDA9.0 但是需要的CuDNN并非v7.5.0 ,而是V7.0.5 。这两个版本很容易让人搞错,一旦搞错,运行Openfaceswap就会出现问题….

下载 CuDNN v7.0.5  后的安装文件如下图

安装方法和上面是一样的,复制,覆盖。

前言

几乎所有的视频换脸程序(deepfakes)都需要CUDA的支持。 Fakeapp,Openfaceswap,FaceSwap,DeepFaceLab这些程序

如果想要跑得快就必须用GPU加速,而想要使用NVIDIA卡的GPU必然会使用CUDA。

CUDA 倒是何方圣神?

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。 开发人员现在可以使用C语言来为CUDA™架构编写程序,C语言是应用最广泛的一种高级编程语言。所编写出的程序可以在支持CUDA™的处理器上以超高性能运行。CUDA3.0已经开始支持C++和FORTRAN………..

专业描述百科上很多,也许你每一个字都能看懂,但是连起来确懵了。没关系,你只要记住开头的那句,想要跑得快就必须要GPU,而要使用N卡的GPU就必须要有CUDA的支持。

CUDA 如何安装?

准备开始安装之前可以先简单了解下CUDA的版本,因为安装CUDA最重要的就是选对版本。如果版本不对,程序跑起来就会出错。

从 2007年发布的CUDA Toolkit 1.0 到2019年的CUDA Toolkit 10.1 ,大大小小版本加起来不少于是个20个。目前用的比较多的是CUDA9 和CUDA10

CUDA 和驱动版本的对应关系也可以了解一下。 目前大部分换脸软件都是支持CUDA9,像DeepFaceLab已经支持最新的CUDA10.1 。

下面就以安装CUDA9为例,展示一下,如何安装这个深度学习的必备工具。

 

首先,当然是下载软件。

CUDA9的官方下载地址为:https://developer.nvidia.com/cuda-90-download-archive

CUDA10.1的选在地址为:https://developer.nvidia.com/cuda-downloads

 

下载的时候需要正确选择操作系统,内核版本,操作系统版本。 上图为针对window10  x64

正确选择类型后往下拉就能看到下载按钮了,一般我们只需要下载Base Installer 。 下面的Patch1,Patch2是更新补丁,不装也没关系。

下载之后双击安装文件,稍等片刻会让你设置CUDA的缓存目录,这个默认即可。

点击OK后开始出现进度条。这个环节其实是在解压CUDA

自动做系统检测。

点击绿色按钮,同意并继续。

安装选项,直接默认,点击NEXT

勾选,继续 NEXT

中途会跳出一个Window Security 的提示,选择安装(Install)即可。

继续Next

 

安装结束之后CLOSE 或者右上角X掉就可以了。  这个软件的安装过程并不复杂,但是可能会遇到一些问题。

 

比如被360等杀毒软件拦截,针对这种情况,先把杀毒软件推出,安装即可。

还有一些情况是直接显示安装失败,很大的原因可能是版本冲突的问题,如果现在安装的版本比你电脑上原先的版本要低,那么肯定是安装不上的。遇到这种情况,可以先把 之前的NVIDIA相关的程序全部卸载,然后再安装。

如果你的操作系统为win7 ,那么最开始的时候记得选win7即可。

如果你想安装CUDA10,那么只要下载CUDA10即可,安装过程完全一样。

 

 

 

安装

在laravel中已经自动集成,无需手动安装。如需在其他地方使用,可使用以下命令进行安装。

为Faker指定中文支持

可通过在 config/app.php 增加如下配置使其支持中文:

Formatters 格式化器基本用法

Faker\Provider\Base 基本

Faker\Provider\Lorem 文本

Faker\Provider\en_US\Person 人物

Faker\Provider\en_US\Address  地址

Faker\Provider\en_US\PhoneNumber 电话号码

Faker\Provider\en_US\Company 公司

Faker\Provider\en_US\Text 文本

Faker\Provider\DateTime 日期时间

Faker\Provider\Internet 互联网

Faker\Provider\UserAgent 用户代理

Faker\Provider\Payment 支付

Faker\Provider\Color 颜色

Faker\Provider\File 文件

Faker\Provider\Image 图片

Faker\Provider\Uuid UUID

Faker\Provider\Barcode 条形码

Faker\Provider\Miscellaneous 各种各样的

Faker\Provider\Biased 偏向的

Faker\Provider\HtmlLorem html文本

Language specific formatters 特定于语言的格式器

 

 

Faker\Provider\zh_CN\Payment

Faker\Provider\zh_TW\Person

Faker\Provider\zh_TW\Company