Files
fun-rec/docs/ch03/ch3.2/3.2.8.2.md
T

151 lines
5.4 KiB
Markdown

## Task02问答整理
## Task02整体流程(外加录屏整理)
- 需要掌握:
- 了解不同数据库的特点
- 掌握linux下数据库的安装
- 了解linux下数据库的常用命令(增删改查)
- 熟练python调用数据库相关包的用法,对于不同的数据库可能有不同的包,包中的方法也只需要掌握增删改查
- 具体详见https://github.com/datawhalechina/fun-rec/blob/master/docs/%E7%AC%AC%E4%BA%8C%E7%AB%A0%20%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F%E5%AE%9E%E6%88%98/2.2%E6%96%B0%E9%97%BB%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F%E5%AE%9E%E6%88%98/readme.md
- 交流会议:
录屏:https://share.weiyun.com/u3ZIjZfg
- 作业分享:https://relph1119.github.io/my-team-learning/#/recommender_system32/task02
## 问题解答
- 问:如果出现年龄显示的问题怎么办?
答:将`\\d`改为`\d`
- 问:请问这个报错是缺少什么?
<div align=center>
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211230094102936.png" alt="image-20210308142624189" style="zoom: 90%;" />
</div>
答:需要下载`drive`驱动才可以正常运行。
- 问:为什么热门文章一直显示在加载中呀?
答:你这个问题应该是没有往下跑后面几个代码,要跑完才能正常加载。
问:可以跑完了还是在加载中?
答:你的redis中有数据吗?
问:应该是有
<div align=center>
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211230094518764.png" alt="image-20210308142624189" style="zoom: 90%;" />
</div>
- 问:为什么有`package.json`这个文件还是报文件缺失错误?
答:路径不对,要进`vue`才行,往下再进一层。
- 问:请问注册的时候发现注册不通过怎么办?
答:后端开起了吗?后端+`snowflake`服务要同时开起来。
问:都开了,我好像是端口映射错了,还是不行。
答:可以用`postman`测试一下后端请求是否能正常返回东西。
问:搞定了,是因为`main.js`没有填写公网地址,填写`0.0.0.0`就行
- 问:`python process material.py`需要`redis`验证怎么解决,有没有除了取消密码之外的解决方式。
<div align=center>
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211230095259645.png" alt="image-20210308142624189" style="zoom: 90%;" />
</div>
答:估计是设置了`redis`的用户和密码,这个没有办法,只能取消密码。或者修改代码,连接`redis`
问:我修改了,但是还是`mongo`没有数据,奇怪了,之前是远程连接`redis`没有修改配置,现在修改了但是爬取还是不太像,不行。
答:`mongodb`的哪个库没有数据?估计是爬虫问题,没有爬取到数据,请单独执行`run.py`脚本。另外,搭建`Linux`环境的小伙伴,在启动项目,如遇到问题,也可参考`windows`环境搭建步骤进行。
- 问:请问如何解决登陆后一刷新没有数据的问题?
答:`main.js`中有几个地方要修改,主要是换公网`ip`
```
package.json
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "webpack-dev-server --open --port 8686 --contentBase src --hot --host 0.0.0.0",
"start": "nodemon src/main.js"
},
```
- 问:用户注册没有反应怎么办?
答:修改此处代码。
<div align=center>
<img src="http://ryluo.oss-cn-chengdu.aliyuncs.com/图片image-20211230100239555.png" alt="image-20210308142624189" style="zoom: 90%;" />
</div>
- 问:有没有试过在本地访问`vm`虚拟机里面的前端,这个时候`ip`应该填什么?
答:虚拟机的`IP`地址
问:可是不行,虚拟机里面的端口我改为了`0.0.0.0`,访问`url`改为虚拟机后端服务的`IP+端口`。前端还是无法访问。
答:那是端口映射问题。
问:虚拟机的`IP`不是公网`IP`,本地虽然能`Ping`通,我也感觉是端口映射问题,没接触过。
- 问:请问运行新代码的时候,是否会出现这个问题,来源于`python process_user.py`
答:问题是系统设计上有问题,当删除用户之后,表格还会保留用户的喜好,然后数据就不会空,但是实际表格数据已经不存在了。
- 问:想问一下这个对字段 age按降序排序,为啥写成 `mydoc = mycol.find().sort("alexa", -1)`
答:`alexa`改成`age`?
问:然后我试了一下结果`age`和`alexa`都可以把`age`按降序排序,我还以为`alexa`在`mongodb`中有特殊含义。
答:如果按照不存在的`field`排序,应该按照`null`处理,然后这个排序会`fallback`到`_id`排序上。这里解释的比较清楚:https://docs.mongodb.com/manual/reference/method/cursor.sort/#std-label-return-natural-order
- 问:计算热度值公式处出错怎么办?
答:计算热度值的公式,最初公式为`Hacker News`算法,大家可以替换成其他的排名算法。
- 问:请教一下,`pymysql`如何进行跨库查询?
答:库名.表名
问:游标不是会制定数据库吗?怎么连接两个数据库呢?
答:连`MySQL`地址不要写库名,然后`SQL`里面加上库名。类似`scheme`概念,模式名.表名
- 问:`ORM`是什么意思?
答:`ORM`是对象关系映射,类似于在`DAO`层的东西,如果类比`JAVA`的话,就是`Hibernate`这种