【Python】Django学习一:第一个Django程序

项目开发环境

Python 3.6

Django 1.11.5

Django安装

在开始安装Django之前,Django更新比较频繁,所以要选择合适的版本,这里选择Django1.11.5.

pip安装

pip install django==1.11.5

创建项目与应用

安装完成后,在../Python36/Scripts/目录下出现一个django-admin.exe的可执行文件。

打开终端,执行以下命令进行创建项目:

django-admin startproject guest #项目名guest

项目结构如下:

guest/__init__.py:一个空的文件,用它标识一个目录为Python的标准包;

guest/setting.py:Django项目的配置文件,包括Django模块应用配置、数据库配置、模板配置等;

guest/urls.py:Django项目的URL声明;

guest/wsgi.py:与WSGI兼容的Web服务器为你的项目提供服务的入口点;

manage.py:一个命令行工具,可以让你在使用Django项目时以不同的方式进行交互。

进入项目,查看manage提供的命令

> cd guest   #进入guest项目
> python manaage.py #查看manage所提供的命令

创建应用

> python manage.py startapp sign  #创建sign应用

Django的应用目录截图:

migrations/:用于记录models中数据的变更;

admin.py:映射models中的数据到Django自带的admin后台;

apps.py:用于应用程序的配置,在新的Django版本中新增文件;

models.py:Django的模型文件,创建应用程序数据表模型(对应数据库的相关操作);

tests.py:创建Django测试用例;

views.py:Django的视图文件,控制向前端页面显示的内容。

运行项目

Django提供了Web容器,通过‘runserver’命令就可以把项目运行起来

默认通过本机的8000端口来启动项目,直接浏览器访问:http://127.0.0.1:8000/

如果8000端口被占用,可以在启动时指定ip地址和端口号来启动项目,方法如下:

> python manage.py runserver 127.0.0.1:8001 #其中127.0.0.1位IP地址,8001为端口号 

 第一个Django Web页面

实现功能,页面上打印“Hello,This is my first Django Web!”

首先配置guest/settings.py文件,将sign应用添加到项目中

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'sign',
]

 

正常的页面访问需要添加访问路径,所以我们这里配置/index/路径来显示页面,在浏览器输入:http://127.0.0.1:8000/index,如图所示:

通过报错信息,可知:

  • Django在项目的guest子目录下通过urls.py文件来定义URLconf
  • 但是,在urls.py文件中只找到admin/路径的路由配置
  • 当前URL和index/没有被找到。

根据错误提示,打开../guest/urls.py文件,添加/index/。

from django.conf.urls import url
from django.contrib import admin
#导入sign应用views文件
from sign import views
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
]

 

重新启动项目。发现又报错。。提示views.py文件没有index属性

 接下来,打开/sign/views.py文件,创建index函数。

from django.http import HttpResponse
# Create your views here.
def index(request):
    return HttpResponse("Hello,This is my first Django Web!")

启动服务后,页面成功显示,第一个Django程序完成!!

本文参考:书籍《Web接口开发自动化测试基于Python语言》

 

posted @ 2018-06-19 17:22  龙猫2018  阅读(1195)  评论(0编辑  收藏  举报