laravel学习笔记1 -- 部署和使用心得

最近需要用laravel框架开发一个后台管理系统,找了很多项目实例后,决定在基于laravel5.1开源的CowCat框架进行学习开发,这系列文章会总结学习laravel学习中遇到的问题


  • 部署laravel项目

    1. 修改项目下的.env文件

      • DB配置,需要关联本地数据库。

      • CACHE_DRIVER一般是用’array’模式,有些项目会是用’file’但如果你的cache不是用文件记录的话,会导致报错This cache store does not support tagging.,如项目之后需要用到redis,这里也可以选择redis模式。

    2. 安装composer,并完善项目。windows下最好使用管理员权限执行composer命令,linux则赋予项目目录读写权限,然后安装最新composer包

      • composer install
      • php artisan migrate:refresh --seed 数据库迁移
      • php artisan serve 开启程序服务器,并在指定端口上访问项目
      • php artisan key:generate 生成新的密钥,这是.env中的app_key
    3. 在访问项目时要确保php拓展是否开启,不然会出现很多错误提示,如oppenssl、pdo_mysql、gd2、curl、fileinfo、mbstring、phpmysqli等。

    4. 如果是在linux环境中必须给予app\storage文件夹读写权限,否则访问项目页面会报500错误,另外需要在nginx配置中给项目指定虚拟主机vhost,如果是在windows环境可以使用apache自带的vhost虚拟机,或者使用 php artisan serve 命令在localhost:8000端口直接访问当前项目,若不适用虚拟地址访问,会造成前端样式和js失效。

  • 使用项目心得

    1. .env中的配置属性,可以在app\config中或者项目其他地方利用env()辅助函数调用,可以使用 php artisan config:cache 命令将配置缓存,这适用于生产环境的项目,因为配置变动小,利用缓存配置的方式可以加快加载速度,但是不适合于多改动的生产环境,若开启了配置缓存,每次修改配置都需要使用 php artisan config:clear 清除缓存,而env这个环境变量的目的是根据当前环境调用对应的环境配置。

    2. 在项目中用到了facade、presenter、provider、repository、trait等特性和设计模式,有效的解耦代码,分层和复用。

      • Facade–门面作为服务容器中的底层类的“静态代理”,用来创建真正实现功能的类,优点是灵活,简明且富有表现力。
      • Presenter,搭配模板使用可以统一模板,减少冗余代码。
      • Provider–服务提供者,提供服务给容器,并注册到相应的容器中提供使用,在其中可以用到监听、注册等方法。
      • Repository–仓库模式,相当于一个数据操作代理层,将控制器里的数据操作剥离出来,同时能减少代码的复用,提高controller里的代码的可读性,分离数据操作和业务逻辑。
      • Trait是一种代码复用技术,为PHP的单继承限制提供了一套灵活的代码复用机制,trait可以将模块化的实现方式注入多个无关的类中,提高代码的复用,符合DRY(dont repeat yourself)原则。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值