Laravel学习记录(一)

今天是周一,说实话上周学了很多东西,但是上周小周只有一天休息再加上那天还停电……😡什么也没整理,这周学习的时候感觉有点懵。整理一下Laravel的内容。

上周主要就是数据库吧,另外就是HTML,CSS自己没性子看下去,等着之后慢慢磨。js倒是还行,就是DOM部分自己当时也是没性子看下去,就一个字,磨。

最难的还是Laravel框架吧,主要是没接触的框架,看文档看不懂,配环境也难受.痛苦。

那就得自己整理,免得以后再受苦了。😀

简述

Laravel就是个PHP做项目的框架,可以直接生成一套项目框架,只要你按照它的约定去组织项目文件,其实感觉难度是不高的,难就难在开头对什么都不熟,难顶。

配置环境

按文档的说法有两种,一个是容器开发环境,另一个是虚拟机开发环境,我个人是参照构建Laravel开发环境这个文档搭建的Homestead环境,整体来说没有难度,就连我这天生和虚拟机相悖的公司电脑都能装上,还是比较顺利的,但是其中问题也确实有一些。

virtual box 版本问题,vagrant 在安装的时候报错了,结果报的错是不支持当前最新的6.1版本vritual box。只能降版本。我碰到的问题目前就这一个。

第一个项目遇见的坑

其实总共就做了两个……第二个还在做,但是坑已经是不少了。

坑的地方大概就在部署上线那一部分吧,首先是存在这么一个问题,部署的Heroku网站是外网,在公司比较差的网络环境下,首先登录heroku就是一个问题。另一个就是,创建的Procfile文件千万不要写错,不然真的无法部署成功,即使在Heroku上吧创建的应用删掉重新部署,也会出现之前创建的远程git地址和新生成的应用的远程git地址不一样的情况,导致还需要改动这个地址才能成功。一番下来自己干脆删了本地代码重新生成,世界从此清净了……🙃

//查看当前的url和生成的是否一致
git remote get-url heroku
//查看应用的url在seting->info->Heroku Git URL
//修改为自己的heroku地址即可
git remote set-url heroku https://git.heroku.com/xxx.git
//再push不上去可以执行heroku git:remote -a myapp来试试(虽然我直接删代码重配了……)

第二个项目遇见的坑

然后第二个做的是一个类微博app,这个主要是卡在了前端渲染组件的安装配置问题。

因为这一部分是要安装web-pack的,而laravel 8似乎在初始化的配置文件上就存在一些问题,windows环境根本无法生成需要的软链接,根本安装不成,还报错。结果参照的是别人的一篇经验。解决了这个问题。

首先是package.json文件默认生成的文件是不行的,得替换成laravel 7的(你问我为啥我也不知道啊):

"scripts": {
        "dev": "npm run development",
        "development": " NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --config=node_modules/laravel-mix/setup/webpack.config.js",
        "watch": "npm run development -- --watch",
        "watch-poll": "npm run watch -- --watch-options-poll=1000",
        "hot": " NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --disable-host-check --config=node_modules/laravel-mix/setup/webpack.config.js",
        "prod": "npm run production",
        "production": " NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --config=node_modules/laravel-mix/setup/webpack.config.js"
    },

安装包的版本部分倒是没什么问题,可以不用管,就是scripts这一部分,默认生成的甚至会带cross-env这个字段,但是带上之后根本安不了,看见之后记得速速删掉。

接下来输入以下命令

sudo SASS_BINARY_SITE=http://npm.taobao.org/mirrors/node-sass yarn --no-bin-links
yarn add cross-env --no-bin-links
//这句会报错,不用管
npm run webpack.mix.js 
yarn add resolve-url-loader@3.1.0 --dev --no-bin-links
npm run dev
//或者
npm run watch-poll

成功的配置大概见上图,在修改前端渲染文件(就是sass那一块时)记得始终打开,因为每次修改保存都会重新编译生成样式表。不要忘了。

完结

暂时解决了目前遇到的各种问题,下一个开始梳理一下Laravel相关的结构内容,像是文件夹结构之类的东西……就先这样吧。