Django:The Web framework for perfectionists with deadlines

Django是一个Python语言开发的高级Web框架,采用MVC架构,通过配置可以快速构建Web应用程序。

①安装

pip install django

验证安装是否成功:

②创建项目

选择对应存放工程的目录,在终端或cmd中使用如下命令创建一个django项目:

创建成功后,在IDE中打开该项目,目录结构如下:

文件对应作用:

  • __init__.py:指明该文件夹为Python中的包(package)
  • settings.py:django的配置文件
  • urls.py:django的URL声明配置文件
  • wsgi.py:兼容WSGI的服务器入口点
  • manage.py:django的启动文件

③启动项目

命令:

执行后会有如下提示:

这里提示有13个为提交的迁移,这里的迁移暂时可用忽略,后面会详细讲到。倒数第二行提示了,服务开启在127.0.0.1:8000这个地址,现在打开浏览器进行访问测试:

这里看到已经访问成功了,并且得到两个提示:

  • 创建第一个app的命令为:python mannage.py startapp [app_label]
  • 项目的DEBUG被打开了并且URL暂未配置

注意:如果要设置对应的运行端口,可用通过在启动命令后加上端口号实现,如在8888端口启动服务,则命令为:python manage.py runserver 8888

④创建一个app

这里的app对应的是项目中的某个模块,一个项目中可以有多个模块,而一个模块也可以属于多个项目。

创建一个blog模块,这里需要开启一个新的终端,因为刚刚的终端在运行服务器,命令如下:

执行完成后,项目路径下多了一个blog文件夹,并且自动创建了一个db.sqlite3的文件,先说这个db.sqlite3文件,其实这是一个数据库文件,这是django默认配置的数据库,打开settings.py文件中可以找到如下定义:

这部分的内容是可以改的,后面会详细介绍这部分。

接着再看blog文件夹:

  • mirgations文件夹:生成迁移数据
  • admin.py:model的注册文件
  • models.py:model层创建文件
  • tests.py:测试文件
  • views.py:view层创建文件

⑤Hello World

这里使用创建的app,进行响应,并且返回"Hello world"。

修改views.py文件,创建index方法:

from django.http import HttpResponse

def index(request):
return HttpResponse("Hello world from blog index")

接着在blog文件夹下面创建一个urls.py文件,并填入如下代码:

from django.conf.urls import url
from . import views urlpatterns = [
url(r'^$', views.index, name='index'),
]

这里声明了在blog这个模块中的url匹配规则,url方法的第一个参数是正则表达式,用于匹配,这里配置为空,第二个参数则是匹配成果后执行的方法,也就是分派给view。

接着在项目路径下django_blog文件夹下的urls.py中配置这个app的url匹配规则:

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

这里的通过include方法将模块中的urls.py中的规则引入,这里设计的思想很明显,就是方便我们对模块根路径的修改,并且使得模块之间耦合度极低,利于复用。

重启服务器,访问路径127.0.0.1:8000/blog:

第二篇将介绍model相关的内容。

Python--Django学习笔记1的更多相关文章

  1. python Django 学习笔记(一)—— Django安装

    注:本人python版本2.7.5 ,win7系统 安装Django https://www.djangoproject.com/download/ 官方下载Django-1.5.5.tar.gz 1 ...

  2. python Django 学习笔记(二)—— 一个简单的网页

    1,创建一个django项目 使用django-admin.py startproject MyDjangoSite 参考这里 2,建立视图 from django.http import HttpR ...

  3. Python——Django学习笔记

    Django——一个封装好的神奇框架 若本文有任何内容错误,望各位大佬指出批评,并请直接联系作者修改,谢谢!小白学习不易. 一.简要模型 模型类操作数据表: python manage.py shel ...

  4. Python & Django 学习笔记

    最近在学校Python和Django.在学习中遇到了种种的问题,对于一个新手来说,下面的问题可能都会遇到.希望能帮助到那些和我一样的人!!0.python-dev安装(ubuntu)  apt-get ...

  5. python Django 学习笔记(五)—— Django admin自动管理界面

    1,激活管理界面 修改settings.py MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', 'django.c ...

  6. python Django 学习笔记(六)—— 写一个简单blog做增删改练手

    简单效果图 1,创建一个项目myblog 可参考这里 myblog/ manage.py myblog/ __init__.py settings.py urls.py wsgi.py 2,创建blo ...

  7. python Django 学习笔记(四)—— 使用MySQL数据库

    1,下载安装MySQLdb类库 http://www.djangoproject.com/r/python-mysql/ 2,修改settings.py 配置数据属性 DATABASES = { 'd ...

  8. python Django 学习笔记(三)—— 模版的使用

    模版基本介绍 模板是一个文本,用于分离文档的表现形式和内容. 模板定义了占位符以及各种用于规范文档该如何显示的各部分基本逻辑(模板标签). 模板通常用于产生HTML,但是Django的模板也能产生任何 ...

  9. Python框架之Django学习笔记(十七)

    Django框架之表单(续二) 今天的这篇博客将是Django学习笔记博客的最后一篇,基本每周最少一篇的Django框架学习,坚持到今天也实属不易,当然了,这个框架的学习仅仅是Django框架的基础部 ...

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

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

随机推荐

  1. 求组合数、求逆元、求阶乘 O(n)

    在O(n)的时间内求组合数.求逆元.求阶乘.·.· #include <iostream> #include <cstdio> #define ll long long ;// ...

  2. P5204 [USACO19JAN]Train Tracking 2

    P5204 [USACO19JAN]Train Tracking 2 毒毒题,对着嘤文题解看了贼久 首先考虑此题的一个弱化版本:如果输入的所有\(c_i\)相等怎么做 现在假设有\(len\)个数,取 ...

  3. ML.NET 示例:二元分类之信用卡欺诈检测

    写在前面 准备近期将微软的machinelearning-samples翻译成中文,水平有限,如有错漏,请大家多多指正. 如果有朋友对此感兴趣,可以加入我:https://github.com/fei ...

  4. Spring+SpringMVC+MyBatis整合(easyUI、AdminLte3)

    实战篇(付费教程) 花了几天的时间,做了一个网站小 Demo,最终效果也与此网站类似.以下是这次实战项目的 Demo 演示. 登录页: 富文本编辑页: 图片上传: 退出登录: SSM 搭建精美实用的管 ...

  5. 个人java框架 技术分析

    1.框架选型 spring-boot https://github.com/JeffLi1993/springboot-learning-example https://mp.weixin.qq.co ...

  6. 腾讯云COS体验

    其实这篇文章本来是推荐COS的,写了一半发现COS的免费额度取消了,2019年之后的开通的用户免费6个月,老用户不受影响,这还让我怎么推荐啊?!写都写了,删掉岂不是白浪费时间? 都怪你!腾讯云! 起因 ...

  7. linux-文件流4种读取方式

    第二种方式 第三种 第四种: 小括号在管道符的右边开辟了两个子进程 大括号在管道符的右边开辟了一个子进程, export 用来导出子进程的 num 还可以借助外部文件进行 七步扩展:

  8. Chrome F12调试

    F12 断点 F5 Esc 选择鼠标右击:编辑||hover样式 Sonrces go to file (ctrl+p) 搜搜文件名

  9. Web系统页面打印技术实现与分析

    1 Web页面打印概述应用WEB化,不论对开发商,还是对用户来说,实在是一种很经济的选择,因为基于WEB的应用,客户端的规则很简单,容易学习,容易维护,容易发布.在WEB系统中,打印的确是个烦人的问题 ...

  10. 软件项目第一次Sprint总结

    成果评分表: 组名 分数 原因 9-652 6 界面和谐生动,可运行,在目前阶段可时间基本操作 hzsy -2 代码下载,但实现安卓和相机调用 JYJe族 -1 实现安卓界面,完成一项功能,做得少 结 ...