django学习(一、关于安装django)

关于安装django

1.安装python

到目前为止,django是1.8.2版本,django使用的python是3.2或者以上

一般linux默认的python版本是2.6,所以如果需要部署django 1.8.2的话,则需要安装python3.2以上,现在的python已经3.4了,所以直接安装python3.4
https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz

安装文档:https://docs.python.org/3/using/index.html

大概步骤是:

1.yum install zlib(避免报错:RuntimeError: Compression requires the (missing) zlib module)
2.yum install zlib-deve
3.下载软件包
4.解压并进入目录
5.进行make编译
    ./configure

    make

    make install

编译安装好之后
会出现python3.4的命令,python对于多版本处理的问题是这样的,他会自动将版本区分:

[root@iZ ~]# python
python             python2            python2.6          python3            python3.4          python3.4-config   python3.4m         python3.4m-config  python3-config    

默认python是python2.6

[root@iZ2 ~]# python
Python 2.6.6 (r266:84292, Jan 22 2014, 09:37:14)

如果你要用python3的话,那么你可以用python3或者python3.4 这个命令,这样的话你的python就会变成python3的,这是多版本共存的情况,另外如果你想直接用python就是python3的话,那么你可以

[root@iZ ~]# cp /usr/local/bin/python3.4 /usr/bin/python
[root@iZ ~]# python
Python 3.4.3 (default, May 12 2015, 15:06:25) 

2.安装django

在安装django1.82的过程中可能会遇到缺少setuptools的情况,

1.setuptools编译安装
2.下载setuptools软件包 https://pypi.python.org/pypi/setuptools
3.解压包并进入包目录
4.安装
    python setup.py install (如果没有做修改python命令那步的话,就是python3.4 setup.py install)

安装完settools后再安装django1.8.2

1.下载离线包 https://www.djangoproject.com/download/
2.解压包
3.进入包目录
4.安装
    python setup.py install

安装完后检查

python -c "import django; print(django.get_version())"
1.8.2

3.安装完django之后开始部署应用

先说明一下django的应用的架构,django是用project来存放数据的,一个project下面会有多个应用,一个应用可以代表为一个网站。

关于project的含义:

project
A Python package – i.e. a directory of code – that contains all the settings for an instance of Django. This would include database configuration, Django-specific options and application-specific settings.

https://docs.djangoproject.com/en/1.8/glossary/#term-project

establishes a Django project – a collection of settings for an instance of Django, including database configuration, Django-specific options and application-specific settings.

https://docs.djangoproject.com/en/1.8/intro/tutorial01/

Projects vs. apps

What’s the difference between a project and an app? An app is a Web application that does something – e.g., a Weblog system, a database of public records or a simple poll app. A project is a collection of configuration and apps for a particular Web site. A project can contain multiple apps. An app can be in multiple projects.

https://docs.djangoproject.com/en/1.8/intro/tutorial01/

总而言之:
1.project 包含应用数据,数据库连接配置,django配置等文件。
2.app是一个web 应用,一个app可以存在多个project中。
3.project可以包含多个app。

4.创建一个project,叫mysite

创建project

django-admin startproject mysite

创建完之后会生成以下这些目录和文件

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

These files are:

  • 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.
    这里外面的mysite是你的project名字,可以改成任何的名字,无所谓的,只是宣布你这个目录是一个project

  • 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 and manage.py
    manage.py是一个命令功能文件,一些命令例如python manage.py migrate 就是调用这个文件进行一些功能命令的使用。.

  • 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目录是真正的django project目录,在需要的时候会用来进行包导入,包导入的时候需要包的名字,这个就是。

  • 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.)
    初始化文件init.py,空文件,用来告诉python这个目录是需要被纳入使用的

  • mysite/settings.py: Settings/configuration for this Django project. Django settings will tell you all about how settings work.
    配置文件settings.py,所有关于这个project的配置都会在这里配置。

  • 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.
    urls.py配置文件,是用告诉django,根据来源的请求去不同url。

  • mysite/wsgi.py: An entry-point for WSGI-compatible web servers to serve your project. See How to deploy with WSGIfor more details.
    跟wsgi有关系的配置文件。

5.在你的project里面建立一个应用

创建应用app

python manage.py startapp polls

mysite
├── mysite
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── polls
│   ├── __init__.py
│   ├── admin.py
│   ├── migrations
│   ├── models.py
│   ├── tests.py
│   └── views.py
└── manage.py

应用polls会含有一些新的文件:

  • models.py
    这个是跟数据库沟通的python文件,根据mvc架构,这个属于m,负责数据这块。
  • admin.py
    django的后台配置文件,可以利用它来建立一个管理后台。
  • migrations
    这是一个目录,是做类似操作的时候,存放相关文件的目录,migration是一个方便的django管理数据库的工具。例如python manage.py makemigrations polls
  • tests.py
    做调试程序的时候使用的。
  • views.py
    控制展现数据的python文件,mvc架构的c,控制器controller。
  • mvc中的v就是web界面了,在django也可以用template来代表
    MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:

    1.Model(模型)表示应用程序核心(比如数据库记录列表)。
    2.View(视图)显示数据(数据库记录)。
    3.Controller(控制器)处理输入(写入数据库记录)。

参考:

1.https://docs.djangoproject.com/en/1.8/intro/tutorial01/
2.http://djangogirlstaipei.gitbooks.io/django-girls-taipei-tutorial/content/django/introduction.html

原文链接:http://www.godblessyuan.com/2015/06/08/django_lerning_chapter_1_about_init_django/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容