Django是一个可以让WEB开发愉悦并且高效的Web开发框架。可以以较小的代价构建和维护高质量的Web应用。
如我正在看的一本书里讲的:
At its best, Web development is an exciting, creative act; at its worst, it can be a repetitive, frustrating nuisance. Django lets you focus on the fun stuff – the crux of your Web application – while easing the pain of the repetitive bits. In doing so, it provides high-level abstractions of common Web development patterns, shortcuts for frequent programming tasks, and clear conventions for how to solve problems. At the same time, Django tries to stay out of your way, letting you work outside the scope of the framework as needed.
正如书中所说的,Django高度抽象了Web开发模式,可以避免频繁的编程工作,同时也提供了许多可行的方法给用户开发。
Django采用的是比较流行的MVC开发模型,虽然是菜鸟,也不需要再重复解释了。其优势松耦合,各个开发部分可以独立更改,而不影响到其他的部分,比如我去做HTML页面,只要一心关注HTML页面即可,做数据库就专心数据库,这也就是时下流行的MVC模型。
这里也不再赘述,可看官方文档,去django的网站去看他的文档引导安装。在这里推荐virtualenv
和 virtualenvwrapper
构造独立的开发环境,这样不会让自己的电脑里边因为搞开发环境乱的一锅粥。
安装方式不难,这里只以Mac为例,安装了pip就行:
|
|
之后在shell的配置文件中加入配置,比如用的是bash的话(这个是Mac的默认shell,有很多推荐zsh),在bash里配置如下:
|
|
然后这个玩意就算是安装完成了,使用方式如下:
|
|
建立完虚拟环境之后,就可以在虚拟环境中安装django等等一些东西,随后不再使用的时候,可以删除这个虚拟环境。
一切就绪之后,就可以使用短短的一句,开始你的项目:
|
|
忘记从django哪一个版本开始,默认的项目中的文件有了改变,在django book里还是1.4时代的django,构建起得项目文件夹默认是这样的:
|
|
而最新的1.7,默认是这样的:
|
|
既然是新开发,那么就尽量按照新的django开始开发,那么就看看这些都是什么。之前也都说了,MVC模式就是将项目的各个部分分开了,独立更改。
这里直接引用原文:
- The outer mysite/ root directory is just a container for your project. Its name doesn’t matter to Django; you can rename it to anything you like.
- manage.py: A command-line utility that lets you interact with this Django project in various ways. You can read all the details about manage.py in django-admin.py and manage.py.
- The inner mysite/ directory is the actual Python package for your project. Its name is the Python package name you’ll need to use to import anything inside it (e.g. mysite.urls).
- mysite/init.py: An empty file that tells Python that this directory should be considered a Python package. (Read more about packages in the official Python docs if you’re a Python beginner.)
- mysite/settings.py: Settings/configuration for this Django project. Django settings will tell you all about how settings work.
- mysite/urls.py: The URL declarations for this Django project; a “table of contents” of your Django-powered site. You can read more about URLs in URL dispatcher.
- mysite/wsgi.py: An entry-point for WSGI-compatible web servers to serve your project. See How to deploy with WSGI for more details.
其中有几个解释一下
其他的都一样了,下一次,我将会将一些主要的一些东西和心得记录下来,而且尽量不去按照自己做django的步骤去记录笔记,因为简单的项目只会让我了解很小的地方。我会选择一些常用的,或者是有意义的部分做以研究,希望自己在学习过程中有所收获。
作为一只典型菜鸟,我希望,自己在这样不断的记录和学习中,让自己迅速茁壮的成长起来~~加油!