django學習(1、關於安裝django)

關於安裝django

1.安裝python

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

通常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.tgzpython

安裝文檔:https://docs.python.org/3/using/index.html
linux

大概步驟是:git

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對於多版本處理的問題是這樣的,他會自動將版本區分:web

[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的話,那麼你能夠django

[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.2mvc

1.下載離線包 https://www.djangoproject.com/download/
2.解壓包
3.進入包目錄
4.安裝
    python setup.py install

安裝完後檢查app

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/cont...

原文連接:http://www.godblessyuan.com/2015/06/08/django_lerning_chapter_1_about_...

相關文章
相關標籤/搜索