django框架使用方法详解

yipeiwu_com6年前Python基础

我的文章的意义

服务端开发,python,django这些内容上面的链接中有详细的阐述. 我写的内容肯定没有上面的完备,准确. 我的文章的价值在于从一个iOS程序员的角度来理解服务端开发. 客户端程序员在学习服务端开发时可能会有一些知识盲点. 我遇到的知识盲点我会着重介绍.

环境

  • 操作系统 macOS Sierra 10.12.6
  • IDE PyCharm
  • python 3.5

创建django项目

首先 创建一个空白环境

mkvirtualenv -p /usr/local/bin/python3.5 python35 --no-site-packages
workon python35

pip install django

django-admin.py startproject HelloWorld

cd HelloWorld

django-admin.py startapp mytest

这样项目就创建好了.

运行一下试试.

workon python35
cd HelloWorld
ls
此时能看到manage.py 文件
如果看不到manage.py, 切换路径仔细找找. 总之cd到manage.py 文件所在目录
python manage.py runserver 8000

图中红色的警告信息的意思是数据库没有migration. 就是工程中有了数据库定义, 但是没有根据数据库定义的代码生成数据库表.

不过不影响此时的运行

此时随便打开一个浏览器地址栏输入http://localhost:8000

看到

项目跑起来了.

停止运行: 同时按下Ctrl+C两个键.

这之后发现工程路径中多了一个文件

是因为django初始时默认使用sqlite数据库, 我们以后会改为mysql的.

使用PyCharm打开项目(有IDE当然要用了)

简单介绍下PyCharm的运行和调试, 至少断点调试必须要会.

对pycharm来说有两处地方需要配置, 否则和我们刚刚创建的python35环境对不上号.

图中选择刚刚创建的python35环境. 如果没有就手动创建一下(addLocal). 指向刚才创建的环境的bin/python就行.

上图中决定的是PyCharm进行代码提示的环境. 代码提示依赖个环境, 如果配置错误, PyCharm会提示很多不存在的错误.

第二处

选择python35环境.

这里决定的run和debug时用来运行项目的python环境.

我填写的配置是将项目跑在localhost的8000端口上.

这样填写只能够本地访问.

调试

将项目跑起来并且能够在局域网中访问

workon python35
cd 到manage.py文件所在目录
python manage.py runserver 0.0.0.0:8000

此时理论上可以通过局域网访问项目.

但是django默认的settings.py 配置还有问题.

需要修改settings.py 文件中的

ALLOWED_HOSTS = []

修改为

ALLOWED_HOSTS = ["*",]

表示任何域名都可以访问本项目

修改之后重新 runserver项目. 即可通过局域网访问了.

例如下面的局域网地址.

http://192.168.0.43:8000

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python中使用元类的教程

type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的。 比方说我们要定义一个Hello的class,就写一个hello.py模块:...

Python实现的读取电脑硬件信息功能示例

本文实例讲述了Python实现的读取电脑硬件信息功能。分享给大家供大家参考,具体如下: 上学那会,老师让我用java获取电脑硬件信息,CPU, 硬盘,MAC等,那个时候感觉搞了好久。。。...

Python可变和不可变、类的私有属性实例分析

本文实例讲述了Python可变和不可变、类的私有属性。分享给大家供大家参考,具体如下: 可变和不可变 items = [] print(id(list)) items.append(...

Python 实现某个功能每隔一段时间被执行一次的功能方法

本人在做项目的时候遇到一个问题: 某个函数需要在每个小时的 3 分钟时候被执行一次,我希望我 15:45 启动程序,过了18 分钟在 16:03 这个函数被执行一次,下一次过 60 分钟...

SVM基本概念及Python实现代码

SVM基本概念及Python实现代码

SVM(support vector machine)支持向量机: 注意:本文不准备提到数学证明的过程,一是因为有一篇非常好的文章解释的非常好:支持向量机通俗导论(理解SVM的三层境界)...