django框架使用方法详解

yipeiwu_com5年前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利用JMeter测试Tornado的多线程

python利用JMeter测试Tornado的多线程

JMeter的简介   JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试...

用Python将IP地址在整型和字符串之间轻松转换

前言 大家应该都有所体会,对于字符串型的IP存入数据库中,实在是个即浪费空间又浪费性能的家伙,所以可爱的人们想出来将IP转换为整型存储。MySQL中存在INET_ATON() 、INET...

深入理解python中的浅拷贝和深拷贝

深入理解python中的浅拷贝和深拷贝

在讲什么是深浅拷贝之前,我们先来看这样一个现象: a = ['scolia', 123, [], ] b = a[:] b[2].append(666) print a print...

python实现文件路径和url相互转换的方法

本文实例讲述了python实现文件路径和url相互转换的方法。分享给大家供大家参考。具体实现方法如下: import urllib pathname = 'path/to/file...