• flask 学习 (五)


         之前照着书去做的时候经常出现一些小问题,由于对于flask核心内容还不甚了解,我觉定先从更简单的做起,再根据别的需要对搭建的网站进行扩展。

         上网找了一下,发现这位http://zhanghonglun.cn/blog/发布的简易搭建的方法还是不错的,链接如下

    http://note.youdao.com/share/?id=2155cf875395e84d92ef80baeae7c3c0&type=notebook#/WEBe84cfb2c9698e3f528b677066e9fb055决定试一下。我之前装过wamp,就用里面的mysql建数据库好了。

         flask也是MVC结构的,接下来,先新建文件夹,在里面放三个小文件夹,一个py配置程序,一个py主程序。小文件夹一个用来安装虚环境virtualenv,用来放相关的python库。

      这里我使用命令行进入文件夹,输入 virtualenv安装。

    Installing Setuptools...........................................................
    ................................................................................
    ................................................................................
    .........................done.
    Installing Pip..................................................................
    ................................................................................
    ................................................................................
    ................................................................................
    .......................done.

      这时虚环境搭建好了,启动按钮放在Scripts文件下,于是用 scriptsactivate启动它,安装我搭建网站需要的东西

    pip install flask
    pip install mysql-python
    

      mysql-python是操作数据库要用的,我安装的时候提示

    error: command '"C:UsersAdministratorAppDataLocalApplication DataProgramsCommonMicrosoftVisual C++
    for Python9.0VCBincl.exe"' failed with exit status 2

      没办法,改用easy_install 安装,可以了。继续搭建。

      小文件夹还有两个,我把他们命名为templates和static,这就是用来显示页面的东西了。flask用的是JinJia模板引擎,默认在templates文件夹下找模板。static放别的静态文件资源,css,js,图片之类的。

      我现在只想实现博客的输入并提交文字,生成文章列表,查询文章这些功能,其中提交和查询都要经过mysql数据库的。所以py主程序里面用来做这些功能已经够了。import os

    from flask import Flask, request, session, g, redirect, url_for, abort, 
         render_template, flash
    import MySQLdb
    import MySQLdb.cursors
    from config import *
    app = Flask(__name__) app.config.from_object(__name__) #首页 @app.route('/') def index(): #文章列表 @app.route('/list') def list(): #文章内容 @app.route('/post/<post_id>') def post(post_id):

    #提交文字 @app.route('/handle',methods=['POST']) def handle(): if __name__ == '__main__': app.run()

      

      

      

  • 相关阅读:
    JAVA面向对象继承 及super的学习
    JAVA 封装的学习
    submit和button的区别
    Servlet四大域对象
    转发和重定向的区别
    JSTL标签用法 详解
    JSP中EL表达式的使用
    解决idea的项目启动报404的问题
    intellij idea 创建动态web项目
    解决mysql数据库中文乱码问题
  • 原文地址:https://www.cnblogs.com/hanzg/p/6353874.html
Copyright © 2020-2023  润新知