人生苦短 ~

Tips:仅适用于 Python 3+(反正差别不大,py2 改改也能用)。因为据 Python 之父 Guido van Rossum 说会在 2020 年停止对 Python 2 的官方支持,所以如果你还在使用 Python 2 那就要早做准备了,毕竟没有官方的支持使用起来也不顺心的。

1. 准备好 Python 和 Django 环境

还没有 Python 环境?Python 下载地址: https://www.python.org/downloads/

Django 安装请看这里 Python web 框架之 Django 基础搭建服务

2. 开始创建我们的工程

django-admin.py startproject HelloDjango

接下来将会出现如下目录结构:

HelloDjango
|----HelloDjango # 项目的容器
|----__init__.py # 空文件,告诉 Python 该目录是一个 Python 包
|----settings.py # 该 Django 项目的设置/配置
|----urls.py # 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"
|----wsgi.py # 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目
|----manage.py # 命令行工具,与该 Django 项目进行交互

3. 启动服务器

进入我们的工程项目 HelloDjango:

python manage.py runserver  # 默认使用端口 8000

在浏览器输入你服务器的ip及端口号,如果正常启动,输出结果如下:

Tips:如果不在 APP 应用中输出 Hello Django! 就在上面完成相关输出操作。

4. 创建 Django 应用

进入我们的工程项目 HelloDjango:

python manage.py startapp mydjango

于是 mydjango 文件夹又出现了:

HelloDjango
|----HelloDjango
|----manage.py
|----db.sqlite3 # 默认使用 sqlite3 数据库
|----mydjango # app 应用目录,相当于该项目的子模块
|----migrations
|----__init__.py
|----__init__.py
|----admin.py # 向 Django 注册你的模块,它会创建 Django 的管理界面
|----apps.py
|----models.py # 存储该应用数据模块的地方,在这里描述数据的实体和关系
|----tests.py # 存储应用的测试代码
|----views.py # 处理应用请求和响应

views.py 和 models.py 每个应用都会用到,是 Django 设计模式 MVT(Model-View-Template)。

5. mydjango APP 和 HelloDjango 项目进行关联

每当有了一个新的应用,都需要在项目的配置文件 setting.py 的 INSTALLED_APPS 中添加应用名称:

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

6. 创建视图

打开新建的 app mydjango 目录,找到文件 views.py 并打开添加如下代码:

from django.shortcuts import render
from django.http import HttpResponse def hello(request):
return HttpResponse("Hello Django!")

7. URL 映射访问

在当前应用目录创建文件 urls.py 并映射需要访问的 URL:

from django.urls import path
from mydjango import views urlpatterns = [
path('hello/', views.hello),
]

8. 把项目中的 URL 和 APP 应用中的 URL 关联

打开 HelloDjango 文件夹找到 urls.py 文件,打开添加如下代码:

from django.contrib import admin
from django.conf.urls import url, include urlpatterns = [
url('admin/', admin.site.urls),
url('mydjango/', include('mydjango.urls')),
]

当访问 mydjango URL 的时候会映射到 mydjango APP 应用中的 urls.py 文件,然后输入该文件中的映射 URL 即可访问,于是输入:

http://127.0.0.1:8000/mydjango/hello/

结果:

~ 我学 Python

Django 学习笔记(一) --- Hello Django的更多相关文章

  1. Django学习笔记之使用 Django项目开发框架

    Django 项目是一个定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来.Django 框架的核心组件有: 用于创建模型的对象关系映射 为最终用户设计的完美管理界面 ...

  2. Django学习笔记(4)——Django连接数据库

    前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下 ...

  3. Django 学习笔记之四 QuerySet常用方法

    QuerySet是一个可遍历结构,它本质上是一个给定的模型的对象列表,是有序的. 1.建立模型: 2.数据文件(test.txt) 3.文件数据入库(默认的sqlite3) 入库之前执行 数据库同步命 ...

  4. Django 学习笔记之三 数据库输入数据

    假设建立了django_blog项目,建立blog的app ,在models.py里面增加了Blog类,同步数据库,并且建立了对应的表.具体的参照Django 学习笔记之二的相关命令. 那么这篇主要介 ...

  5. Django学习笔记(五)—— 表单

    疯狂的暑假学习之  Django学习笔记(五)-- 表单 參考:<The Django Book> 第7章 1. HttpRequest对象的信息 request.path         ...

  6. Django学习笔记(三)—— 型号 model

    疯狂暑期学习 Django学习笔记(三)-- 型号 model 參考:<The Django Book> 第5章 1.setting.py 配置 DATABASES = { 'defaul ...

  7. Django 学习笔记(二)

    Django 第一个 Hello World 项目 经过上一篇的安装,我们已经拥有了Django 框架 1.选择项目默认存放的地址 默认地址是C:\Users\Lee,也就是进入cmd控制台的地址,创 ...

  8. Django 学习笔记(五)模板标签

    关于Django模板标签官方网址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.IF标签 Hello World/vi ...

  9. Django 学习笔记(四)模板变量

    关于Django模板变量官方网址:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.传入普通变量 在hello/Hell ...

  10. Django 学习笔记(三)模板导入

    本章内容是将一个html网页放进模板中,并运行服务器将其展现出来. 平台:windows平台下Liunx子系统 目前的目录: hello ├── manage.py ├── hello │ ├── _ ...

随机推荐

  1. python基础之Day15

    一.函数递归 什么是函数递归: 函数递归调用是一种特殊的嵌套调用,在调用一个函数的过程中,又直接或间接地调用了该函数本身. 其中,函数的递归有明确的结束条件,不能无限制的调用,否则会撑破内存,在Pyt ...

  2. Java 数组元素合并并去重

    public class TestList { public static void main(String[] args) { Set<Integer> set = new TreeSe ...

  3. 学生管理系统(Java Swing JDBC MySQL)

    该系统使用 Java Swing.JDBC.MySQL 开发 开发环境 Eclipse.WindowBuilder JDK版本:1.8 代码在百度网盘中(176***5088) 目录结构如下 Data ...

  4. nodeJS实现一个在线填表应用

    1.构建一个web服务器 以前玩php和jsp时用过Apache.汤姆猫服务器,nodejs则有不同,他是需要自己createServer. //server.jsvar http = require ...

  5. 如何解决XMLHttpRequest cannot load file:~~~~~~~~~~~. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-res

    原因:Chrome不支持本地Ajax请求. 解决: 右击Chrome浏览器快捷方式,选择“属性”,在“目标”中加上"--allow-file-access-from-files", ...

  6. centos 7下 django 1.11 + nginx 1.12 + uwsgi 2.0

    之前写过一个博客关于如何安装django的,见下网址, http://www.cnblogs.com/qinhan/p/8732626.html 还有一个网址如何安装nginx的 http://www ...

  7. SPI通信协议(非原创,转载他人,用于学习)

    SPI通信协议:1.SPI主从模式:2.数据信号的相位与极性:3.数据帧的格式. 一.什么是SPI? SPI是串行外设接口(Serial Peripheral Interface)的缩写.是 Moto ...

  8. Servlet 中,out.print()与out.write()的区别

    最近刚学习了Ajax,其中有通过$.getJSON的实现方式 由于前后端传递值的时候会通过流的方式进行传递,这就不得不涉及到这方面的知识了 PrintWrite out=response.getWri ...

  9. kaldi的TIMIT实例二

    ============================================================================ MonoPhone Training & ...

  10. 自适应Simpson法与积分初步

    前言 不知道为什么,今天感觉想要写一下数学的东西,然后就看了一下我还有这个模板不会,顺手写了一下. 没有学过微积分的最好还是看一下求导为好. 求导 听说很多人都不会求导,我写一下吧qwq 令\(f(x ...