django基础

知识点:

  1. 基本认知

  2. 工具准备

  3. 新建项目

  4. 目录及文件说明

  5. 开发服务器

  6. 创建视图函数

  7. 新建应用(app)

1.基本认知

Django是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站!

Web应用框架(Web application framework)是一种开发框架,用来支持动态网站,网络应用程序及网络服务的开发。

http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理。Web应用框架处理完以后再发送给http服务器,http服务器再返回给用户。

2.工具准备

linux (ubuntu) + python3 + pycharm + mysql

python3:virtualenv,django,pymysql

安装django: pip install django==1.11.7

注意:django1.11和django2.0版本有些区别, 本次案例以1.11.7为主.

创建虚拟环境并在虚拟环境中安装好django1.11.7

(py3env) pyvip@Vip:~$ workon
envpy2
py3env
pydjtest
(py3env) pyvip@Vip:~$ mkvirtualenv -p /usr/bin/python3 pydjts11
Running virtualenv with interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /home/pyvip/.virtualenvs/pydjts11/bin/python3
Also creating executable in /home/pyvip/.virtualenvs/pydjts11/bin/python
Installing setuptools, pip, wheel...done.
virtualenvwrapper.user_scripts creating /home/pyvip/.virtualenvs/pydjts11/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/pyvip/.virtualenvs/pydjts11/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/pyvip/.virtualenvs/pydjts11/bin/preactivate
virtualenvwrapper.user_scripts creating /home/pyvip/.virtualenvs/pydjts11/bin/postactivate
virtualenvwrapper.user_scripts creating /home/pyvip/.virtualenvs/pydjts11/bin/get_env_details
(pydjts11) pyvip@Vip:~$ pip install django==1.11.7
Collecting django==1.11.7
Using cached https://files.pythonhosted.org/packages/15/d8/b17afdcd527026d2f1acd30ac33406e6b22c0f573a3c14b2d9e0bd7df945/Django-1.11.7-py2.py3-none-any.whl
Collecting pytz (from django==1.11.7)
Using cached https://files.pythonhosted.org/packages/dc/83/15f7833b70d3e067ca91467ca245bae0f6fe56ddc7451aa0dc5606b120f2/pytz-2018.4-py2.py3-none-any.whl
Installing collected packages: pytz, django
Successfully installed django-1.11.7 pytz-2018.4
(pydjts11) pyvip@Vip:~$ pip list
Package   Version
---------- -------
Django     1.11.7
pip        10.0.1
pytz       2018.4
setuptools 39.1.0
wheel      0.31.0
(pydjts11) pyvip@Vip:~$

3.新建项目

两种方式:

1.在命令行中创建:

django-admin startproject hello_django1

2.在pycharm编辑器中创建:

4.Django目录及文件说明

├── hello_django
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── manage.py

manage.py django中的一个命令行工具,管理django项目
__init__.py 空文件,告诉python这个目录是python包
setting.py 配置文件,包含数据库信息,调试标志,静态文件等。
urls.py Django项目的URL声明
wsgi.py 部署服务器用到的

5.开发服务器

因为我们用的是linux上面的环境,所以为了让我们在windows的浏览器上能访问到我们的服务器,那么需要修改setting.py的文件,将里面的ALLOWED_HOSTS = [] 改成ALLOWED_HOSTS = ['*'],这样才能使我们在本地能访问到我们linux上面的服务器。

linux虚拟机网络连接方式是nat端口转发时,需要设置http服务8000端口的转发:

将配置文件和端口都设置好后就可以去运行我们的服务,开服务开启.

开启服务的命令:python manage.py runserver 0:8000

pycharm中有两种方式可以开启服务.

1.在pycharm中的配置,在运行服务器配置的页面改成0.0.0.0的host ,然后保存运行.

打开settings.py,把ALLOWED_HOSTS = [] 改成 ALLOWED_HOSTS = ["*"]

2.在Tool工具,点击Run manage.py Task... ,这样就能打开项目的manage管理器,然后在下面输入运行服务器的命令runserver 0.0.0.0:8000

当服务启动后,我们打开浏览器输入ip:端口回车就能看到It workd!的页面,这就说明我们已经访问到了我们linux上面的django开发服务器了。

注意: 从这些开启的方式中选择一种方便的去开启服务就可以了,不要重复操作, 重复操作端口就会被占用.

6.创建视图函数

在项目目录下创建views.py视图函数

# hello_django/views.py
from django.http import HttpResponse

def index(request):
   return HttpResponse('hello django!')

定义试图函数相关的URL(hello_django/urls.py)

# hello_django/urls.py
from django.conf.urls import url
from django.contrib import admin
from . import views
urlpatterns = [
   url(r'^admin/', admin.site.urls),
   url(r'^hello/', views.index),
]

文件保存好后,检查服务器是否正常运行,然后在浏览器上输入ip地址:8000端口/hello就能在网页上查看到hello django!

7.新建应用(app)

一个项目可以包含多个应用,下面是创建应用的命令:

python manage.py startapp movie

在pycharm中打开项目的manage管理器, 然后输入创建应用的命令startapp appname

DJango 基础 (1)的更多相关文章

  1. Python之路-(js正则表达式、前端页面的模板套用、Django基础)

    js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...

  2. Django 基础教程

    Django 基础教程 这是第一篇 Django 简介 »  Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站! 你一定可以学会,Django 很简单 ...

  3. python的django基础篇

    一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...

  4. Python学习(二十六)—— Django基础一

    转载自:http://www.cnblogs.com/liwenzhou/p/8258992.html 一.Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的 ...

  5. Django基础(一)

    Django基础(一) 知识预览 Django基本命令 二 路由配置系统(URLconf) 三 编写视图 四 Template 五 数据库与ORM admin的配置 一 什么是web框架? 框架,即f ...

  6. python3之Django基础篇

    一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...

  7. Django基础和基本使用

    Django基础 Django是Python下的一款著名的Web框架 框架 任何语言进入到高级部分时,会有认证.session.http.连接数据库等等功能操作,没有框架时需要自己实现 框架 是整个或 ...

  8. {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm

    Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...

  9. {Django基础九之中间件} 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证

    Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学会了 ...

随机推荐

  1. 编写 python 小程序,将LOL官网的皮肤保存下来,上传百度云,记录那些强撸灰飞烟灭的日子

    to 撸的血泪史:大学四年几乎都在宿舍打撸,So,把官网的皮肤都保存下来,存到百度云,就当一种纪念 编辑器:pycharm 用到的包:urllib.request, requests, json, r ...

  2. webstrom左侧项目栏不显示文件夹问题

    在使用webstrom的时候遇到问题: 打开项目,只显示package.json和webpack.config.js其他文件夹和文件都不显示 解决办法: 1.关闭webstrom当前项目 2.找到项目 ...

  3. while RE Validation

    一.简介 为什么需要正则表达式? 文本的复杂处理 正则表达式的优势和用途? 一种强大而灵活的文本处理工具: 大部分编程语言.数据库.文本编辑器.开发环境都支持正则表达式. 正则表达式定义: 正如它的名 ...

  4. LeetCode - Maximum Frequency Stack

    Implement FreqStack, a class which simulates the operation of a stack-like data structure. FreqStack ...

  5. java多线程同步器

    Java中多线程开发时,离不开线程的分工协作,常用的多线程的同步器有如下几种: 1.CountDownLatch 应用场景:等待一组线程任务完成后在继续执行当前线程. 用法:定义一个CountDown ...

  6. 第2章 Java基本语法(下): 流程控制--项目(记账本)

    2-5 程序流程控制 2-5-1 顺序结构 2-5-2 分支语句1:if-else结构 案例 class IfTest1{ public static void main(String[] args) ...

  7. ubuntu18关闭系统自动更新

    ubuntu18.04关闭系统自动更新有两个方法:1.修改配置文件 修改配置文件/etc/apt/apt.conf.d/10periodic#0是关闭,1是开启,将所有值改为0vi etc/apt/a ...

  8. solr6.4.1 搜索引擎(1)启动eclipse启动

    solr是一个java写的搜索引擎,所以支持java方式的eclipse调试. 本篇文章使用solr版本为6.4.1 一. 环境 solr 下载地址 http://archive.apache.org ...

  9. 几种不同格式的json解析

    原文地址:http://blog.csdn.net/whx405831799/article/details/42171191 给服务端发送请求后,服务端会返回一连串的数据,这些数据在大部分情况下都是 ...

  10. Openface 入门

    Openface 简单入门 背景 Openface是一个开源的人脸识别框架,同类软件产品还有 seetaface ,DeepID等,当然,如果算上商业的产品,那就更多了. Openface人脸比对结果 ...