DJango 基础 (1)

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

 

原文地址:https://www.cnblogs.com/longxd/p/9068005.html