Django 学习笔记(一) --- Hello Django
人生苦短 ~
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的更多相关文章
- Django学习笔记之使用 Django项目开发框架
Django 项目是一个定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来.Django 框架的核心组件有: 用于创建模型的对象关系映射 为最终用户设计的完美管理界面 ...
- Django学习笔记(4)——Django连接数据库
前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下 ...
- Django 学习笔记之四 QuerySet常用方法
QuerySet是一个可遍历结构,它本质上是一个给定的模型的对象列表,是有序的. 1.建立模型: 2.数据文件(test.txt) 3.文件数据入库(默认的sqlite3) 入库之前执行 数据库同步命 ...
- Django 学习笔记之三 数据库输入数据
假设建立了django_blog项目,建立blog的app ,在models.py里面增加了Blog类,同步数据库,并且建立了对应的表.具体的参照Django 学习笔记之二的相关命令. 那么这篇主要介 ...
- Django学习笔记(五)—— 表单
疯狂的暑假学习之 Django学习笔记(五)-- 表单 參考:<The Django Book> 第7章 1. HttpRequest对象的信息 request.path ...
- Django学习笔记(三)—— 型号 model
疯狂暑期学习 Django学习笔记(三)-- 型号 model 參考:<The Django Book> 第5章 1.setting.py 配置 DATABASES = { 'defaul ...
- Django 学习笔记(二)
Django 第一个 Hello World 项目 经过上一篇的安装,我们已经拥有了Django 框架 1.选择项目默认存放的地址 默认地址是C:\Users\Lee,也就是进入cmd控制台的地址,创 ...
- Django 学习笔记(五)模板标签
关于Django模板标签官方网址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.IF标签 Hello World/vi ...
- Django 学习笔记(四)模板变量
关于Django模板变量官方网址:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.传入普通变量 在hello/Hell ...
- Django 学习笔记(三)模板导入
本章内容是将一个html网页放进模板中,并运行服务器将其展现出来. 平台:windows平台下Liunx子系统 目前的目录: hello ├── manage.py ├── hello │ ├── _ ...
随机推荐
- Java:ConcurrentHashMap
ConcurrentHashMap的目的 多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap.虽然已经有一个线程安全的Ha ...
- 连续子数组和的最大值plus
package wodeshiyao; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStre ...
- mui.init()和mui.plusReady()
1.每个用到mui的页面都调用下mui.init.2.如果需要使用大H5+对象,就写到plusReady中,如plus对象. HTML5+扩展api是针对手机APP的,只有才手机应用(比如手机浏览器) ...
- python 更换 版本
这是一个悲伤的安装ipython的过程. 写下来留个教训吧. 也是希望对博友一些帮助吧. 注: 我也写了一篇window下安装bpython的文章(个人感觉bpython要比ipython强大的多), ...
- ABP框架系列之四十二:(Object-To-Object-Mapping-对象映射)
Introduction It's a common to map a similar object to another object. It's also tedious and repeatin ...
- 异常与Final
Throwable 类是 Java 语言中所有错误或异常的超类(这就是一切皆可抛的东西).它有两个子类:Error和Exception.Error:用于指示合理的应用程序不应该试图捕获的严重问题.这种 ...
- Django Model Form
ModelForm ModelForm结合了Form和Model,将models的field类型映射成forms的field类型,复用了Model和Model验证, 写更少的代码,并且还实现了存储数据 ...
- Django orm 实现批量插入数据
Django ORM 中的批量操作 在Hibenate中,通过批量提交SQL操作,部分地实现了数据库的批量操作.但在Django的ORM中的批量操作却要完美得多,真是一个惊喜. 数据模型定义 首先,定 ...
- 不需要 root 权限的 ping
https://blog.lilydjwg.me/2013/10/29/non-privileged-icmp-ping.41390.html https://stackoverflow.com/qu ...
- 手动封装on,emit,off
on 绑定 emit 触发 off 解绑 //存放事件eventList = {key:valhandle:[]} 1对多on(eventName,callback);handle:-------N多 ...