Windows 10家庭中文版,Python 3.6.4,Flask 1.0.2,Eclipse Oxygen.1a Release (4.7.1a),PyDev 6.3.2

本文记录了 使用Eclipse+PyDev插件编辑Flask项目,目的是解决前面使用Notepad++编辑Python文件时,没有提示和自动补全功能的缺憾。

由于前面的Flask测试项目都是基于单个文件模块的,感觉太简单且没有大用,于是,昨天使劲看了Flask官网的一些文章,其中,Larger Applications介绍了如何基于package来开发更大的项目。刚刚过去的两个小时里,按照此文档的介绍进行了自己的测试,启动了bigflask项目,基于package。

本测试的主要步骤简介:

1.使用Eclipse+PyDev插件建立项目,包括建立项目所需文件和文件夹

最终的目录结构:包括安装、运行后产生的文件夹和文件

2.编写项目的setup.py、setup.cfg文件——用于安装项目

也是在Eclipse中进行;

需要熟悉setuptools模块的用法;

3.使用pip3命令安装bigflask项目

命令行进入bigflask的源文件目录,执行“pip3 install -e .”命令(注意有一个点号);

4.运行项目并测试

本测试步骤详解

1.打开Eclipse,新建PyDev工程bigflask;

2.在bigflask工程下建立源文件夹src,再在PyDev Package bigflask——必须是这个名字,普通文件夹tests,setup.py和setup.cfg文件;

3.在PyDev包bigflask下建立文件夹static、templates和文件views.py,__init__.py是在建立此包时自动创建的;

说明,在Larger Applications文档中,上面建立的PyDev包bigflask应该存在于bigflask文件夹中的,而本测试中是src,但都可以正常运行。

4.编辑源文件

主要是编辑setup.py、__init__.py、views.py,本测试中setup.cfg为空,文件夹tests、static、templates为空。

setup.py的源码

setup函数中的各个配置项,需要查看更多的资料,比如,使用Python Shell中使用help命令查看。

 # -*- coding: utf-8 -*-

 from setuptools import setup

 setup(
name='bigflask',
packages=['bigflask'],
include_package_data=True,
install_requires=[
'flask',
]
)

__init__.py的源码

 # -*- coding: utf-8 -*-

 from flask import Flask

 app = Flask(__name__)

 import bigflask.views

views.py的源码

 # -*- coding: utf-8 -*-
'''
Created on 2018年5月23日 @author: log
'''
from bigflask import app @app.route('/')
def index():
return "Hello World!"

5.按照之前的方法运行(老方法)

打开Windows命令行,进入bigflask的源文件目录src,设置环境变量,使用flask run运行bigflask项目。

测试:

可以通过http://127.0.0.1:5000/打开页面并看到Hello World!输出。

6.使用pip3 install安装后运行并测试

最开始看文档Larger Applications时,没有明白其中的pip install命令用来干什么的,在试验后发现,它的作用是将bigflask项目安装到Python中。

-e选项的作用是用于 在可编辑模式安装一个模块。后来经过试验才知道,在安装后修改views是可以看到有更新的。更具体的解释我就不清楚了。

那么,进入bigflask的src目录,执行下面的命令安装bigflask:

pip3 install -e .

注意,-e后又一个点号,表示当前目录。

安装成功后,可以使用pip3 list看到已安装的bigflask:

也可以在Python安装目录的Lib\site-packages中找到一个bigflask开头的EGG-LINK文件(什么是EGG-LINK文件呢?):

在bigflask项目下也多了一些文件:bigflask.egg-info文件夹及其下文件。这些文件的内容可以看看,有助于理解setup.py文件中setup()函数的参数。

打开新的Windows命令行工具运行bigflask项目:不用再进入bigflask项目下的src即可运行了——这就是安装bigflask的好处吧!又学到一招!

访问页面,结果前一次访问结果一样。

7.更多测试

7.1 修改views.py后测试bigflask站点的变化

在views.py中添加下面的代码——增加了一个视图函数:

 @app.route('/love')
def love():
return "I love flask"

再次运行bigflask项目,访问“/love”页面:成功。看来,在Eclipse中修改bigflask项目后,可以看到项目的变化。

7.2 使用pip3 uninstall命令卸载bigflask

在Windows命令行总执行pip3 uninstall bigflask命令,可以成功卸载bigflask。

! 测试源码!

后记

终于完成了第一个使用package的Flask项目了。

还需要熟悉setuptools模块的使用。

egg-link有什么用?

pip命令详解。

官方文档中的Tutorial文档和源码(在GitHub下载)都需要好好观摩一番才是。

不清楚Linux上是否可以使用Eclipse+PyDev,需要搞清楚,否则换到Linux下就没法愉快的开发了。

官方文档Becoming Big十分需要看看。

下一步,使用Blueprint。

下下步,使用SQLAlchemy。

Flask:使用Eclipse+PyDev插件编辑基于package的项目的更多相关文章

  1. Python开发环境(3):使用Eclipse+PyDev插件创建Django项目

    OS:Windows 10家庭中文版,Python:3.6,Eclipse:Oxygen.1a Release (4.7.1a), PyDev:6.3.2,Django:2.0.3 本文展示了怎么使用 ...

  2. 在windows下用eclipse + pydev插件来配置python的开发环境

    在windows下用eclipse + pydev插件来配置python的开发环境 一.安装 python 可以到网上下个Windows版的python,官网为:https://www.python. ...

  3. Python开发环境(1):Eclipse+PyDev插件

    电脑:小米笔记本电脑Pro 15.6寸(i5-8250U),操作系统:Windows 10,JDK版本:1.8.0_152(环境变量已配置) Step 1.下载Eclipse 根据我的CPU型号,选择 ...

  4. Eclipse + pydev插件

    在Eclipse中安装pydev插件 启动Eclipse, 点击Help->Install New Software...   在弹出的对话框中,点Add 按钮.  Name中填:Pydev,  ...

  5. IDE eclipse PyDev插件安装

    Python安装成功后,即要配置开发环境,这里选用Eclipse, 在Eclipse中安装PyDev插件,有多种方法,这里介绍最最常用的两种. 1)使用Eclipse安装插件,打开eclipse,进入 ...

  6. eclipse+pydev 怎么导入已有的python项目

    转自:https://zhidao.baidu.com/question/2117277007790501747.html 已有的python项目导入eclipse的步骤: 1.首先,打开Eclips ...

  7. 用eclipse+svn插件,上传新项目到svn服务器

    给定trunk路径,https://svn.ws.125089.com/public/nlp/3434index/IndexByModelSolr/trunk/. 其中自己的web项目名字是Index ...

  8. 【转】Python自动化测试 (一) Eclipse+Pydev 搭建开发环境

    原文网址:http://www.cnblogs.com/TankXiao/archive/2013/05/29/3033640.html C#之所以容易让人感兴趣,是因为安装完Visual Studi ...

  9. [Environment setup]python+selenium+Eclipse+pydev环境搭建

    转载自: http://www.cnblogs.com/Bonker/p/3584707.html http://www.cnblogs.com/fnng/archive/2013/05/29/310 ...

随机推荐

  1. AFO NOI2018退役——菜鸡一直是菜鸡

    游记DAY -INF连续几天的模拟让我确信我就是菜鸡.以及相信yxd,sjq,cyl神犇一定能够稳了. DAY 0报道,天很热热热热热热热热热. DAY 1开幕式,杜子德很热热热热热热热热热. DAY ...

  2. 什么是 metadata (元数据)

    1. 什么是元数据 任何文件系统中的数据分为数据和元数据.数据是指普通文件中的实际数据,而元数据指用来描述一个文件的特征的系统数据,诸如访问权限.文件拥有者以及文件数据块的分布信息(inode...) ...

  3. mysqlbinlog- 处理二进制日志文件的实用工具 学习笔记

    参考 MySQL 5.5官方简体中文参考手册完美版  8.6 节 调用: shell> mysqlbinlog [option] log-files... mysqlbinlog支持下面选项: ...

  4. 利用poi来向execl中写入对象

    附上jar包下载链接: 附上百度网盘下载连接: 链接:https://pan.baidu.com/s/1t_jXUq3CuhZo9j_UI4URAQ 密码:r2qi package com.wz.po ...

  5. STS导入Gradle项目出现 Could not create task of type 'DependencyManagementReportTask'

    解决方法: 在build.gradle文件下添加如下: classpath 'io.spring.gradle:dependency-management-plugin:0.6.1.RELEASE'

  6. 解题:USACO18FEB Taming the Herd

    题面 从零开始的DP学习系列之贰(我的DP真的就这么烂TAT) 设DP状态的另一个技巧,考虑题目中有关答案的各种信息 然后这种和结尾有关系的$dp$可以考虑向前找结尾来转移 设$dp[i][j]$表示 ...

  7. 【DP】【P4539】 [SCOI2006]zh_tree

    Description 张老师根据自己工作的需要,设计了一种特殊的二叉搜索树. 他把这种二叉树起名为zh_tree,对于具有n个结点的zh_tree,其中序遍历恰好为(1,2,3,-,n),其中数字1 ...

  8. 微信开发使用 frp 实现本地测试

    前提条件: 1.有公网服务器(如阿里云) 2.需要独立的 80 端口,也就是说,想要实现这个目标,服务器上不能跑 nginx 之类占用 80 端口的程序 3.有可以测试使用的域名,并解析到上面说的公网 ...

  9. mac、linux 查看端口占用程序

    lsof -i:80 列出占用 80 端口的程序 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 672 ruby 42u IPv4 ...

  10. 对faster rcnn 中rpn层的理解

    1.介绍 图为faster rcnn的rpn层,接自conv5-3 图为faster rcnn 论文中关于RPN层的结构示意图 2 关于anchor: 一般是在最末层的 feature map 上再用 ...