编辑: 牛牛小龙人 2019-07-06
ThinkSNS Plus 新扩展包安装方法简介 ThinkSNS Plus 为了满足 laravel 升级带来的新特性以及新体验,会随时对各种技术 参数进行调整,包括 laravel 版本升级, PHP 版本升级, 我们针对每一个 laravel 版本 的发布做升级, 这样做是为了您的项目在运行很长时间「一般只一个 LTS 的服务 支持周期」之后,不会因为主体框架升级而导致不必要的问题 需求: 为了打消大家对扩展包安装的疑虑, 我们先写一版图文版的教程来告诉大 家如何安装非主干自带的安装包的安装方法, 我们以 PC 扩展包为例 所以的例子均默认以 ThinkSNS Plus 根目录为目录起始, ThinkSNS Plus 简写为 TS+ 一.

从github 仓库克隆仓库到本地「自己的电脑, 或者服务器」/packages 目录 中「注: 存放在哪个目录其实不重要, 放在这里主要是为了把扩展包统一放 置」,所以 pc 包所在的路径为: /packages/plus-component-pc, 这里的 pc 包 名是官方的默认包名, 实际的包名,请以从 github 克隆的包名为准;

a) , 当前操作系统为 OS X, 如图, /plus/packages/plus-component-pc 即为 pc 包的所在路径 二. 将pc 扩展包加入到依赖中 a) 编辑 TS+下的 composer.json, 找到 json 对象中的 「repositories」 属性, 类 型为数组: b) 在此数组的任意位置加入pc 包的元素如图:,i. 元素属性说明: 1. type: 告诉 composer 以路径的方式安装这个扩展包;

2. url: 告诉 composer 这个包相对于当前被编辑的 composer.jons 文件的相对路径, 也就是我们在第一步中将 pc 包放置的位置, 再次说明, 包的位置可以是任意位置, 3. options.symlink, 是否将 packages 里的包, 软链接到 vendor 目 录中, 「建议软链接, 这样在更新 packages 中相应的包之后, 如果有新的类加入,只需要在根目录执行composer dump-autoload 就可以」 4. options.plus-soft: c) 将添加的包加入到 composer 依赖中: 上一步只是告诉 composer 有pc 包这个一个东西存在, 但是并没有告诉 composer 我们要使用这个东西, 这一步,我们就来让 composer 知道, 我们要使用 composer 这个包啦;

i. Composer 依赖包里的composer.json 文件首先需要一个属性:version 来表明自己的版本, 如果没有这个属性, composer 就会告诉 我们, 没有找到相应的版本, 所以我们先要在 pc 包的 composer.json 文件中,添加一个版本号: 「如果已经有这个属性了, 就不需要修改了」 ii. , 如图所示: 我们现在定义的版本好 是5.0.1, 所以,需要在 TS+的composer 中用下图所示的方式来引入这个包:这个是 TS+完整的依赖包列表, 箭头所示部分,即为引入 pc 包的标记 「被引入依赖的版本号的写法, 请查看 compser 文档, 这里不做介 绍了」 iii. 然后我们回到 TS+根目录, 执行 composer install, 到最后,我们看看 laravel已经发现了这个包了, 说明已经依赖成功, 但是到这里并没有 结束, 因为 pc 包会有一些自己的数据表加入到数据库中, 所以我们 还需要继续下一步 iv. 执行:php artisan pakcage:handle pc 发现如下图:,install: 安装, remove: 移除 「删掉数据库, 并删除配置文件」 , link: 将 静态文件软链接到 TS+的public 目录;

继续: v. Php artisan package:handle pc install : ,输入 yes 回车, 命令行输出: Seeding: PcTableSeeder, 说明数据库 迁移成功 vi. Php artisan package:handle pc link 可以把 pc 包的静态文件软链接 到public 目录, 这样每次 pc 包有更新才做, 就不用再次执行这个步 骤了 三. 我们会将我们自己的扩展包都统一规范, 非必要的扩展包都会以这种方式来 安装, 如果有疑问, 请到 https://github.com/slimkit/thinksns-plus 提issue, 教程到此结束

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题
大家都在看的话题