码迷,mamicode.com
首页 > 数据库 > 详细

[flask实践] 解决qq邮箱/mysql的相关配置问题

时间:2017-07-25 21:26:23      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:www   开发环境   ica   添加   data   database   多个   pen   注册   

笔者经过flask web(Miguel著,封面是一条狗)一书的学习,打算实现一个旅游类网站,在此过程中发现,相对于书中的flasky博客程序,需要作出一些改变:

1. 注册邮箱:国内要使用126,qq等邮箱。默认读者了解过flasky邮件的实现方式,而使用126、qq邮箱的不同之处有:

    第一,邮箱端口  [‘MAIL_PORT‘] = 465  不同于gmail的587端口

    第二,使用协议  [‘MAIL_USE_SSL‘] = True  不同于gmail的TLS协议

         第三,用户名   [‘MAIL_USERNAME‘] = ‘2327****81‘  只需提供用户名,不需要后缀名(@qq.com)
    第四,密码    [‘MAIL_PASSWORD‘] = ‘apnrtcqkuq****ce‘  到邮箱运营商开启stmp服务,并获取授权码(并非邮箱的登录密码)

其他配置与flasky环境类似,可以使用单独的config文件存储这些关乎安全的信息。

2. 更换数据库:书中使用的sqlite是一种轻型的本地数据库,目的在于简单易学,但想在互联网上部署一个可供人们访问的web程序,需要使用那些高并发、支持远程服务的中型数据库,例如MySQL,在新浪云上部署web程序最好使用MySQL,因为在计算量不高的情况下,是免费的。在此推荐使用新浪云SAE部署web程序,整个部署流程友好,适合个人开发者和实验展示程序,最重要的是对于免费用户提供的云空间和数据库计算量也足够大。书中作者也推荐了一个友好的免费部署平台,但遗憾的是国内需要使用VPN访问,速度极慢。

Flask框架使用mysql和sqlite类似,我使用的是Ubuntu下的Pycharm开发环境,建立flask工程。Pycharm附带了数据库可视化插件,无需使用navicat这些工具(这个工具配置起来也是很麻烦的,国内访问极慢)。

安装MySQL :

  sudo apt-get install mysql-server

  sudo apt-get install mysql-client

  sudo apt-get install libmysqlclient-dev

安装完毕就启用了mysql服务,这个时候无论从终端登录mysql的root账户还是Pycharm访问数据库都会报1045错误,原因在于没有给root用户设置密码,解决方法和相关的指令不再赘述,参考http://blog.csdn.net/wwwdc1012/article/details/51745906 需要注意的是:mysql的用户可以创建很多个,数据库也可以创建很多个。

能够以root新密码登录mysql后,根据程序的需要创建用户和数据库。常用的MySQL指令参考:http://www.cnblogs.com/penciler/p/4813157.html 需要注意的是,我们只需要创建数据库以及访问该数据库的用户名、密码,并不需要创建该数据库内的表,表应该由flask程序中的SQLalchemy语句在web服务启动时创建(参考书中的models类)。

在flask工程安装并引入Flask-MySQL、Flask-MySQLdb、Flask_SQLalchemy包,安装完毕后在程序中填写数据库URI:

[‘SQLALCHEMY_DATABASE_URI‘] = ‘mysql://用户名:密码@localhost:3306/数据库名‘
打开Pycharm的Database插件-->DataSourse-->MySQL,输入刚才在机器中创建好的mysql用户名、密码、数据库名,点击Test Connection,显示成功,你的可视化数据库已经配置完毕,flask程序可以在数据库中读写数据,在Database插件可以直观的看到有哪些表、主键、外键、具体的数据。
但不知是否和Pycharm的版本有关,我的Test Connection按钮是灰色的,显示缺少驱动文件MySQL Connector/J ver5.1.40,旁边提供了Download链接但是点下去毫无反应。在MySQL官网下载这个驱动文件,并在这个窗口Additional添加此驱动,重启Pycharm,Test Connection按钮可以正常工作。


至此,实际flask web程序中使用到的邮箱和数据库的相关问题就解决了。

 

[flask实践] 解决qq邮箱/mysql的相关配置问题

标签:www   开发环境   ica   添加   data   database   多个   pen   注册   

原文地址:http://www.cnblogs.com/xiaozhaoqi/p/7236227.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!