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直接赋值、浅拷贝与深度拷贝实例分析

本文实例讲述了Python直接赋值、浅拷贝与深度拷贝。分享给大家供大家参考,具体如下: 直接赋值:其实就是对象的引用(别名)。 浅拷贝(copy):拷贝父对象,不会拷贝对象的内...

python开头的coding设置方法

缘起: [root@CentOS7 code]# python multi_thread_mfw.py File "multi_thread_mfw.py", line 138...

用Python+OpenCV对比图像质量的几种方法

用Python+OpenCV对比图像质量的几种方法

前言 图片的本质就是大量像素在二维平面上的组合,每个像素点用数字化方式记录颜色。可以直观的想象,一张图片就是一个巨大的电子栅格,每个格子内有一盏灯泡,这个灯泡可以变换256的三次方种颜色...

pandas删除指定行详解

pandas删除指定行详解

在处理pandas的DataFrame中,如果想像excel那样筛选,只要其中的某一行或者几行,可以使用isin()方法来实现,只需要将需要的行值以列表方式传入即可,还可传入字典,进行指...

vim自动补全插件YouCompleteMe(YCM)安装过程解析

Vim是全平台上一个高度可拓展的编辑器。它本身只是一个简陋的编辑器,但是因为有各种插件而变得强大。使用Vim编写代码就不免遇到代码补全的问题。常用的代码补全插件有两个:日本人shougo...