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如何保证输入键入数字的方法

要求:python写一个要求用户输入数字,如果不是数字就一直循环要求输入,直到输入数字为止的代码 错误打开方式: while True: ten=input('Enter a n...

Python赋值语句后逗号的作用分析

本文实例讲述了Python赋值语句后逗号的作用。分享给大家供大家参考。具体分析如下: IDLE 2.6.2 >>> a = 1 >>> b =...

Python多项式回归的实现方法

Python多项式回归的实现方法

多项式回归是一种线性回归形式,其中自变量x和因变量y之间的关系被建模为n次多项式。多项式回归拟合x的值与y的相应条件均值之间的非线性关系,表示为E(y | x) 为什么多项式回归:...

Python2包含中文报错的解决方法

Python2包含中文报错的解决方法

发现问题 最近在工作中遇到一个问题,通过查找相关的解决方法终于解决,下面话不多说了,来一起看看详细的介绍吧 命令行会出现如下错误信息 SyntaxError: Non-ASCII ch...

用Python脚本来删除指定容量以上的文件的教程

文件多了乱放, 突然有一天发现硬盘空间不够了, 于是写了个python脚本搜索所有大于10MB的文件,看看这些大文件有没有重复的副本,如果有,全部列出,以便手工删除 使用方式 加一个指定...