- 博客(132)
- 收藏
- 关注
原创 git02-----Git重命名文件&Git三大区域
第二个阶段:拓展新功能,修改文件名字,删除文件假如我们的项目上线了一个新功能段视频我们需要怎么做一个新的功能就相当于创建了一个新的文件在里面写入新的功能我们创建一个demo.py文件然后把它加入管理再注册就行了重命名我们试试直接用mv修改发现有些不同,虽然我们现在没有demo.py文件了,但是再git的管理记录里还是有demo.py文件的所以我们应该先删除demo.py然后再把xuexi.py加入到管理里删除rm.我们再来查看状态然后.
2021-03-04 00:11:21
210
1
原创 git01-----git使用&github介绍&管理文件
安装git网址:https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git第一阶段:自己写代码版本控制进入要管理的文件夹 右键点击gitbashhere 初始化 gitinit 可以发现多了一个隐藏文件夹.git 管理目录下文件的状态 gitstatus 红色可以认为是新增的文件 管路指定文件 gitadd文件名字 可以看到他变成绿色的了 我们目...
2021-03-03 22:27:43
201
1
原创 项目前导11_linux-----mkdir和rm命令选项,cp和mv命令选项
mkdir命令选项这种方法是不能使用的我们在后面加上-p就可以了rm命令选项我们如果直接使用rm的话,他是不会询问你是否确定删除的,我们很容易造成误删的情况,而且linux没有回收站我们如何解决呢 -i-ri就是递归删除且交互式提示这样的话就直删除了BB但是AA还在我们接下来看一下 -f我们创建了一个AA/BB/CC的目录,我们选择删除AA接上 -fr他直接就全部删除了,没有任何提示,直接全部删除我们尝试删除一下不存在的目录也是没有任...
2021-02-24 16:32:37
243
原创 项目前导10_linux-----ls命令选项
为什么学习linux ,因为我们做web项目,项目会上线到服务器上,服务器的操作系统一般都是linux系统ls命令选项ls -l:ls -h:ls -a:但是我们可以看到ls -l下面显示总用量44,但是我们看ls -a的显示了隐藏文件也才只有18个啊,我们现在可以推断总用量不是文件数目我们几项显示隐藏文件,又想以列表的形式显示怎么操作那我们可不可以把两个选项合并呢点开头的是隐藏文件我们可以发现ls -h的描述是文件大小单位显示,默认是字节,但是我
2021-02-23 18:27:30
185
原创 项目前导08_linux-----终端命令格式的组成
终端命令格式的组成command [-options] [parameter]command::命令名,比如:ls,pwd[-options]:选项,可以有零个,一个或者多个选项,多个选项可以合并,比如使用的-r就是选项。[parameter]:参数,可以有零个,一个或者多个参数,比如:touch文件名,mkdir目录名、cd目标目录(路径),这些文件名和目录名都是参数。[ ]:代表可选小结:终端命令完整格式:命令名选项(可选)参数(可选) 选项:用于调整命令的功能...
2021-02-21 19:40:41
92
原创 项目前导07_linux-----复制、移动文件及目录命令
复制、移动文件及目录命令我们将桌面的3.py复制到AA目录中文件是可以这么操作的,那我们试试目录能直接copy过去吗我们可以发现直接复制是不行的,需要加上-r这个命令,现在我们尝试一下把AA中的3.py复制到asd目录中...
2021-02-21 19:28:41
160
原创 项目前导06_linux-----创建、删除文件及目录
创建、删除文件及目录创建文件创建文件的规范:不能使用/,因为/是根目录,不建议使用特殊字符!@#!¥%!¥!@,也尽量不要以.或..开头.开头是隐藏文件一次性创建多个文件也是可以的创建目录目前我们还不能一次创建BB/CC这样的多层级目录,但是以后我们会有办法的我们将两个命令结合起来试试呢我们直接用touch命令在AA中创建1.py文件那我们试试在一个不存在的目录下创建文件呢这样是不可以的删除文件或目录rm:我们尝试删除1.py删除成功,
2021-02-19 16:30:29
122
原创 项目前导05_linux-----绝对路径、相对路径、自动补全、回到行首、回到行尾、快速删除当前行、强制终止当前命令
绝对路径从根目录算起的路径叫做绝对路径举例,桌面下的demo文件的绝对路径怎么写这样操作相对路径从当前的路径算起的路径叫做相对路径我们现在在demo文件中我们想进入到python文件中通过相对路径,我们怎么做呢这样操作自动补全:tab键回到行首:ctrl+a回到行尾:ctrl+e快速删除当前行:ctrl+u强制终止当前命令:ctrl+c...
2021-02-19 16:01:18
128
原创 项目前导04_linux-----切换目录命令
切换目录命令cd目录 :切换到指定目录 changedir (改变目录)cd ~ :切换到当前用户的主目录cd ..:切换到上一级目录cd .:切换到当前目录cd -:切换到上一次目录上面的几个文件和目录中,比如zaaacki没人告诉你他是什么,你能知道他是文件还是目录吗,当然不能了我们可以使用ll,来查看详细信息ll:展示详细信息 相当于ls -l的简写我们可以看到一头d开头的,有-开头的,d开头的就是目录cd ~:cd ..:...
2021-01-25 18:30:28
153
原创 项目前导03_linux-----查看目录命令
快捷键:字体变大:ctrl+shift+加号(0旁边的加号)字体变小:ctrl+减号(0旁边的减号)启动终端:ctrl+alt+t清空终端:ctrl+l查看目录命令:ls:查看当前目录的信息pdw:查看当前所在目录 printworkdir我们通过右键创建文件夹再桌面创建了一个demo文件夹我们跳转到桌面使用ls,看一下是否显示,成功了tree:以树装的的方式显示目录信息这里给我们报错了,我们需要使用tree的话需要安装我们如...
2021-01-25 18:00:26
167
原创 web项目054----保存订单评论信息
保存订单评论信息回到我的订单可以发现现在已经是待评价状态了我们点击发表评价我们发现他访问了commnt接口,并且返回了两个东西一个是comment评论,一个是order_id订单id我们在订单模块中编写路由...
2021-01-21 20:49:08
224
原创 web项目053-----保存订单结果
保存订单结果我们支付成功以后可以看到一个order/payment的请求我们首先定义路由@api.route("/order/payment", methods=["PUT"])@login_requireddef save_order_payment_result(): """ 保存订单的结果 :return: json """然后查看sdk完善代码首先要接受参数 data = request.form.to_dict()
2021-01-21 19:30:42
155
原创 web项目052-----支付宝,支付
支付,支付宝配置公钥和私钥提示:商城私钥加密数据,商城公钥解密数据。 支付宝私钥加密数据,支付宝公钥解密数据。首先百度搜索Openssl,然后安装完之后,通过Openssl生成密钥生成商城公私钥$ openssl$ OpenSSL> genrsa -out app_private_key.pem 2048 # 制作私钥RSA2$ OpenSSL> rsa -in app_private_key.pem -pubout -out app_public_key.pem
2021-01-12 04:24:36
641
原创 web项目051-----对接支付宝
对接支付宝我们登陆客户账号,进入我的订单,点击去支付我们给支付创建一个单独的模块下面我们要用到支付宝了我们直接百度搜做支付宝进入官网选择我是开发者,然后扫码登陆因为我们没有备案过的url地址,所以我们选择研发服务我们首先要创建应用,去官方文档查看点击接入准备Python支付宝SDK:https://github.com/fzlee/alipay/blob/master/README.zh-hans.md...
2021-01-11 18:05:09
180
原创 web项目050-----房东接单&拒单
房东接单&拒单我们现在打开客户订单出现了templateerror所以我们应该去html中做一个替换这里要做一个判断,是否有订单,如果没有就输出‘暂时没有订单’要有结尾我们点击接单他发送了一个put请求我们点击拒单我们在js文件中没有看出什么要返回的特殊数据接下来编写路由接受参数@api.route("/orders/<int:order_id>/status", methods=['PUT'])@login_re.
2021-01-11 17:17:08
220
原创 web项目049-----查询用户订单
查询用户订单我们打开用户的我的订单,发现什么都没有,我们应该写这部分的了我们进入房东的账户看一下这个只是假的,写死的,所以还是没有我们观察这两个路由是一样的只有后面不同以为接收了这个数据来区分房东和用户我们先来定义路由接下来我们要进行判断,判断当前访问的是用户还是房东,然后再根据不同的身份编写不同的程序房东的身份: 1.先查询属于自己的房子,就是House的房东id等于当前登陆用户的id 2.把这些房子的id取出来(...
2021-01-09 20:53:58
563
原创 web项目048-----保存订单到数据库
保存订单到数据库接下来我们改保存数据到数据库中了这个amount我们还没有,我们需要计算一下然后再把他放进去就行了然后保存提交数据通过观察js文件,我们发现他没返回数据,所以我们就不用返回data了我们点击提交订单打开sqlyog查看,发现都是正确的成功!...
2021-01-09 19:55:21
342
原创 web项目047-----保存订单接受参数&校验参数
保存订单接受参数&校验参数接下来我们做订单模块订单会有两个用户 一个下单的 一个接单的我们使用另一个账号登陆,随便点一个房间,然后进入选择日期点击提交订单这是我们要写的订单模块的路由我们要获取这三个参数这里我们创建一个一个orders.py文件,别忘了在蓝图中导入首先我们接收参数:我们的orders_data什么都没有是不行的吗,所以我们要做一个判断然后我们校验参数,判断这三个参数是否都存在然后判断日期是否正确,首先我...
2021-01-09 17:53:27
165
原创 web项目046-----房屋页面加入缓存
房屋页面加入缓存我们现在要把搜索的数据放到redis中我们放入redis中的是什么数据类型呢而且我们搜索有很多个条件:house_开始/结束,区域ID,排序,页数,我们怎么选择数据类型把他们都存起来呢我们搜索的条件不一样的话,我们缓存的也是不一样的我们之前大多数的选择都是字符串,整体存入整体失效,有过期时间现在我们有没有别的数据类型可供我们使用呢?redis中都是key和value的形式,那么我们可不可以这样想在redis中有一个数据是这样的格式哈希hash..
2021-01-08 20:09:11
115
原创 web项目045-----房屋搜索分页功能
房屋搜索分页功能我们现在要定义分页功能这里我们使用了paginate()这个方法我们设定常量把paginate后面的参数完善处理完分页之后我们打印一下看看page_obj是什么是一个类Pagination我们怎么得到这里面的数据呢我们查看源码这个items就帮咱们做了操作,我们直接使用items就行了现在就给我们返回了具体的数据这中列表中提取数据,我们已经做过很多次了接下来我们就可以返回数据了我们需要去js中文件中看一下data到.
2021-01-08 19:34:05
271
原创 web项目044-----房屋搜索页面查询
房屋搜索页面查询现在我们要查询数据库了,但是这么多信息怎么查呢?我们从我们的House模型中查询把房屋查询出来返回到页面中现在假如用户给我们传入了起始时间和结束时间但是我们House模型中没有时间啊,我们怎么查询呢在订单中查询,订单中有起始时间和结束时间但是又出现问题了,有的房间没有下过订单怎么办呢,查不到鸭我们换个思路,我先查新当前用户搜索的时间,比如4号住,我们就找4号当天的订单,然后在把4号被订出去的订单排除就行啦就是:所有的房间-被预定的房间=没被预定的房间
2021-01-06 19:30:39
154
原创 web项目043-----房屋搜索参数接受&校验
房屋搜索参数接受&校验我们点击搜索,发现他的url后面是用?拼接的我们把这里换成东城区,来看一下两个url有什么区别他们的aid后面的值发生了变化,说明aid对应的就是城区的数据我们选择入住时间,和离开时间,在来搜索一下看一下url发生了什么变化sd,ed后面有了数据,对应的是入住日期和离开日期我们再点击入住最多发现sk后面有了值通过查看网页的html可以看到每一个都有对应的值p就不用想了,page,第几页到目前我们就.
2021-01-06 17:51:32
76
原创 web项目042-----详情页面加入缓存
校验参数,优化代码我们之前没有做任何优化,如果房屋id不存在呢所以我们需要校验参数# 校验参数 if not house_id: return jsonify(errno=RET.PARAMERR, errmsg='参数错误')然后还有验证房屋是否存在 if not house: return jsonify(errno=RET.NODATA, errmsg='房屋不存在')我们还应该做什么呢?特别是首页这种广告位的房屋信息.
2021-01-05 20:09:39
92
原创 web项目041-----房屋详情
房屋详情我们从首页点击轮播图查看房屋详情但是我们可以发现这里的东西都写死了,都是固定的,不是咱们想看的所以我们要继续修改打开detail.html文件,我们可以看到这都是写死的我们接下来就要把这些数据查询出来,然后返回到js中,再又模版渲染到html中这里有个数字3这个就是房屋的id我们需要定义路由@api.route("/house/<house_id>", methods=["GET"])这里这个house_id一定是整数形式,所以我们加上限
2021-01-05 18:22:00
347
1
原创 web项目040-----房屋信息加入缓存
房屋信息加入缓存如果我们每次刷新都查询数据库的话是不是比较浪费所以我们要使用缓存# 先查询缓存再查询数据库 try: result = redis_store.get("home_page_data") except Exception as e: logging.error(e) # 这里不用返回错误信息 result = None if result: return result.decode(),
2021-01-04 19:29:54
85
原创 web项目039-----查询首页房屋
查询首页房屋接下来我们要在首页做一个房屋的展示但是这么多图片怎么做呢我们首先要查询查询房屋首先我们应该定个规则,如:订单最多的前五位,会在首页展示房屋/或者交广告费等等我们这里按照订单的数量进行排序首先我们进入首页,可以看到,我们需要写的是这个路由因为他是在首页上的,就不需要登陆了@api.route('/houses/index', methods=['GET'])def get_house_index(): """ 获取首页房屋信息
2021-01-04 19:08:14
142
原创 web项目038-----查询用户发布过的房屋
查询用户发布过的房屋如果我想知道当前登陆的用户发不过那些房间,这个怎么查呢首先我们可以在网页中看到,我们有一个house的GHT请求所以我们要写/user/houses这个路由首先你需要获取当前用户@api.route("/user/houses", methods=["GET"])@login_requireddef get_user_houses(): """ 获取用户发布的房源 :return: 发布的房源信息 """ # 获取当前
2021-01-03 18:46:08
135
原创 web项目037-----保存房屋图片
保存房屋图片我们上一章做完了保存房屋信息我们加下来该保存房屋图片信息了我们先随意上传一张照片,来查看我们需要写的路由然后我们确定我们需要返回的值,和参数,然后校验参数接下来将图片上传到七牛云,同时回顾七牛云的代码filename就是得到的那个图片名字一段乱七八糟的数据,前面加上constants.QINIU_URL_DOMAIN就是图片的url地址我们去models文件中看我们的House表中还有一个房屋主图片的路径所以我们还要添加这个url,在做优化
2020-12-16 22:41:42
188
1
原创 web项目036-----保存房屋基本信息
保存房屋基本信息上一章中,我们的设备信息还没有保存设施与房间是一个多对多的关系,我们怎么保存呢‘我们首先获取设备信息我们的设备有没有可能不存在呢设备对应的编号最多到23,那我们通过postman直接传入24,25怎么办呢所以我们首先要判断设备是否存在查询数据库也可能出错,所以加上try注意这里我们使用了Facility.id.in_()这个查询条件这个in_是什么意思呢,我们可以推断,因为我们获取到的设备信息是这样的是多个数据,所以这个in_应该就是按照Fac
2020-12-15 23:06:33
119
原创 web项目035-----保存房屋信息
保存房屋信息现在我们把这些数据随便填写一下然后查看他发送到那个路由发现他访问了houses/info路由,用的POST方式返回了这些数据我们先创建路由然后接受数据校验参数判断价格,我们需要查看model中价格的单位判断区域ID,我们的区域ID就是1-15,如果有人用postman穿个100过来,那是不是不行、然后判断入住天数保存房屋信息现在还没有处理设施信息,所以先不保存...
2020-12-12 13:09:42
146
原创 web项目034-----JS模版引擎
JS模版引擎我们可不可以把前端的代码优化呢前端模版JS模板-ART-TEMPLATEhttp://aui.github.io/art-template/我们在这里使用js模版在相应的html文件中也要引入js我们可以去html中寻找这个id我们应该在这个地方使用爆红没事,因为pycharm不认识这个语法...
2020-12-11 23:53:50
109
原创 web项目033-----区域信息加入缓存
区域信息加入缓存考虑优化问题,我们每次访问网页,都会查询数据库,就很浪费所以我们要加缓存我们先要从redis中获取area_info这个值如果这个值存在,我们直接使用这个值,并把这个值保存早redis中,设置过期时间在常量中,我们设置一个地区有效过期时间然后设置redis中地区的过期时间这里返回的是json我们还需要将数据转换成json字符串下面就是我们完整的代码@api.route("/areas")def get_area_info():
2020-12-10 23:33:27
120
原创 web项目032-----保存城区信息
保存城区信息到目前位置我们的个人信息的部分就算开发完成了我们先想数据库中添加房源地区的信息,和设备的信息INSERT INTO `h_area_info`(`name`) VALUES ('东城区'),('西城区'),('朝阳区'),('海淀区'),('昌平区'),('丰台区'),('房山区'),('通州区'),('顺义区'),('大兴区'),('怀柔区'),('平谷区'),('密云区'),('延庆区'),('石景山区');INSERT INTO `h_facility_info`(`nam
2020-12-10 00:05:54
106
原创 web项目031-----保存实名认证信息&获取实名信息
读取用户头像和用户名我们上一章写好了关于用户名的程序但是我们可以发现,还有一个user路由没有定义一个get请求,他需要获取什么呢,我们去js文件中看一看他需要获取两个值,一个是用户名name,一个是头像图片avatar我们写完了路由,但是我们看最后一样。data这么写是不是很麻烦,一个一个获取所以我们在models模型中创建一个方法,to_dict我们在最后的data直接调用to_dict即可,就能获取到字典里面的所有数据我们现在刷新网页头像和.
2020-12-04 00:01:37
624
原创 web项目030-----修改用户名
修改用户名上一章我们上传头像,我们去数据库中看一眼图片保存成功接下来我们做用户名的修改我们随意输入发送参数如果这块有用户名的话这显示用户名,然后进行修改加下来我们先写这个路由接下来获取用户提交的用户名,然后保存用户提交的用户名但是不能出现重名的,因为我们数据库中的name一开是就定义的是唯一的接下来我们修改完了用户名,应该更新sesssion中的数据了我们测试一下,我们数据库中有这个name:lala提示我们用户名已经存
2020-12-03 00:59:46
321
原创 web项目029-----用户上传头像接口定义
用户上传头像接口定义首先我们可以知道上传图片前端返回的是formdata我们需要接受参数,从前端的js文件中可以看到,我们需要返回avatar_url地址我们运行代码看一下这个返回的是什么他是一个类,我们怎么获取里面的数据呢# 获取图片的二进制数据 image_data = image_file.read()在上传到七牛云@api.route('/users/avatar', methods=["POST"])@login_requiredd...
2020-12-01 22:29:59
410
原创 web项目028-----七牛云的SDK封装
七牛云的SDK封装接下来我们看一下七牛云怎么用我们使用他的对象存储功能,点击进入然后点击新建空间选择华东,选择公开,点击创建创建完之后,咱们没有自己的自定义域名,点击好的我知道了创建完之后,点击进入点击文件管理可以看到有个外链域名,点击保存为默认域名点击上传文件点击选择文件,选择完图片之后直接返回就可,就已经保存了这是我们手动上传的过程,我们肯定使用代码操作的,我们怎么用代码操作呢,首先看开发者文档进入开发者中心.
2020-12-01 21:46:49
269
原创 web项目027-----装饰器的测试&文件存储方案选择
装饰器的测试我们选择文件点击上传可以看到现在我们去写个这路由,晚上上传图片的功能我们创建一个profile用来写个人中心的一些功能from . import api@api.route('/users/avatar', methods = ["POST"])def set_user_avatar(): """设置用户头像"""我们要设置用户头像,那么就必须登陆所以就用到我们上一章定义的装饰器了# view_func---被装饰的函数def l
2020-12-01 20:36:27
89
原创 web项目026-----装饰器的定义
装饰器的定义首先我们思考,我们应该以什么样的一个状态进入到这个界面肯定不能是直接输入my.html我们应该以登陆的状态进入到这个界面,不登录不能进我们需要做一个这个功能,验证用户是否登陆,如果没有登陆就跳转到登陆页面我们需要自己定义一个装饰器在commons.py中定义我们的装饰器,因为他和业务逻辑没有关系,是一个自定义工具,所以我们放到了utils文件中的commons.py文件中我们把user_id保存到全局的g对象中,不存也可以,在session中取也行
2020-12-01 01:06:22
172
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人