Django 介绍

Django框架简介

Django,是一个开放源代码的Web应用框架,由Python写成,采用了MVC的软件设计模式,即模型M,视图V,控制器C。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手DjangoReinhardt来命名的。

Django的主要目标是使得开发复杂的、数据库驱动的网站变得简单,注重组件的重用性和“可插拔性”,敏捷开发和DRY法则(Don't Repeat Yourself)。在Django中Python被普遍使用,甚至包括配置文件和数据模型,于2008年6月17日正式成立基金会。


核心组件

Django框架的核心包括:

一个面向对象的映射器,用作数据模型(以Python类的形式定义)和关联性数据库间的媒介;

一个基于正则表达式的URL分发器;

一个视图系统,用于处理请求;

一个模板系统。

核心框架中还包括:

  • 一个轻量级的、独立的Web服务器,用于开发和测试。
  • 一个表单序列化及验证系统,用于HTML表单和适于数据库存储的数据之间的转换。
  • 一个缓存框架,并有几种缓存方式可供选择。
  • 中间件支持,允许对请求处理的各个阶段进行干涉。
  • 内置的分发系统允许应用程序中的组件采用预定义的信号进行相互间的通信。
  • 一个序列化系统,能够生成或读取采用XML或JSON表示的Django模型实例。
  • 一个用于扩展模板引擎的能力的系统。

内置应用

Django包含了很多应用在它的"contrib"包中,这些包括:

  • 一个可扩展的认证系统
  • 动态站点管理页面
  • 一组产生RSS和Atom的工具
  • 一个灵活的评论系统
  • 产生Google站点地图(Google Sitemaps)的工具
  • 防止跨站请求伪造(cross-site request forgery)的工具
  • 一套支持轻量级标记语言(Textile和Markdown)的模板库
  • 一套协助创建地理信息系统(GIS)的基础框架

服务器部署

Django可以运行在启用了mod python的Apache 2上,或是任何WSGI兼容的Web服务器。Django也有启动FastCGI服务的能力,因此能够应用于任何支持FastCGI的机器上,Django1.0已经可以利用Jython运行在任何J2EE服务器。

下列数据库引擎被Django官方支持:

  • PostgreSQL
  • MySQL
  • SQLite
  • Oracle

MicrosoftSQL Server的适配器正在开发中,处于试验阶段。(注:SQL Server的支持在1.0版本中已经被完全去除)


Django 安装

Django is available open-source under theBSD license. It requires Python version 2.6.5 or higher, but it has no dependencies on other Python libraries. There are several ways you can get it:

Option 1. Get the latest official version

The latest official version is 1.6.

You can install it withpip:

pip install Django==1.6

You can also get it by direct download:

First, downloadDjango-1.6.tar.gz(checksums). Then:

tar xzvf Django-1.6.tar.gz
cd Django-1.6
sudo python setup.py install

Option 2. Get the latest development version

The latest and greatest Django version is the one that's in our Git repository (our revision-control system). Get it using this shell command, which requiresGit:

git clone https://github.com/django/django.git

You can also downloada zipped archiveof the development version.

After you get it

See theinstallation guidefor further instructions. Make sure you read the documentation that corresponds to the version of Django you've just installed.

And be sure to sign up for thedjango-users mailing list, where other Django users and the Django developers themselves all hang out to help each other.


Django 安装验证:

安装完毕Django后,验证是否成功:

root@ubuntu:/# python
>>> import django
>>> django.get_version()
'1.6'


Django 创建工程

# django-admin.py startproject mysite
# tree mysite/
mysite/
├── manage.py
└── mysite
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py


运行 mysite

# python manage.py runserver
Validating models...
0 errors found
November 21, 2013 - 12:22:12
Django version 1.6, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.


访问http://127.0.0.1:8000/,浏览器如下图:





参考推荐:

Django 官网

Django 源码(github)

Django 博客专栏(推荐)


### Django框架简介 Django是一个开放源代码的Web应用框架,完全由Python编写而成[^1]。它遵循BSD版权协议,并于2005年7月首次发布,随后在2008年9月推出了首个正式版本1.0[^1]。作为一个重量级的Web开发工具,Django因其全面性和高效性而备受开发者青睐。 --- ### Django的主要优势 #### 1. **快速开发** Django的设计理念之一是“Don't Repeat Yourself (DRY)”原则,这使得开发者可以更专注于业务逻辑而非重复性的基础工作。其内置了许多实用的功能模块,减少了从零构建的时间成本[^1]。 #### 2. **安全性高** 为了保护应用程序免受常见的安全威胁,Django提供了多种内置的安全机制。例如,通过`django.middleware.csrf.CsrfViewMiddleware`中间件来防范跨站请求伪造(CSRF)[^2]。此外,还支持密码哈希存储、点击劫持防护等功能,从而显著提升了应用的安全水平。 #### 3. **可扩展性强** 无论是小型项目还是大型复杂系统,Django都能很好地适应需求变化。它的组件化架构允许开发者轻松添加或移除特定功能,这种灵活性让长期维护变得更加简单方便。 #### 4. **丰富的生态系统** 得益于庞大的社区支持以及持续更新迭代,围绕着Django已经形成了一个极其完善的插件库和技术文档集合。这些资源极大地降低了学习门槛并加速了实际项目的推进速度[^1]。 #### 5. **兼容主流数据库** Django自带了一个强大的ORM(Object Relational Mapping),能够无缝对接MySQL、PostgreSQL等多种关系型数据库管理系统(RDBMS)。这意味着即使是在不同类型的后台数据环境中切换操作也相对简便快捷。 ```python # 示例:定义模型类并与数据库交互 from django.db import models class Book(models.Model): title = models.CharField(max_length=100) author = models.CharField(max_length=50) def __str__(self): return self.title ``` 以上代码片段展示了如何利用Django ORM创建简单的书籍表结构,体现了该框架简化数据库管理的能力。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值