海上月明

          editer by sun
          posts - 162, comments - 51, trackbacks - 0, articles - 8
             :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

          [1] Django筆記:Django 入門

          Posted on 2010-05-30 14:48 pts 閱讀(2002) 評論(1)  編輯  收藏 所屬分類: DjangoPython
          from django.db import models



          class Poll(models.Model):

          question = models.CharField(max_length=200)

          pub_date = models.DateTimeField('date published')



          class Choice(models.Model):

          poll = models.ForeignKey(Poll)

          choice = models.CharField(max_length=200)

          votes = models.IntegerField()



          安裝Django

          建議安裝python2.5及以上版本,但不建議使用python3.0。

          數(shù)據(jù)庫如果使用sqllite,python已經(jīng)內(nèi)建,不需另行安裝,如果需要使用myslq或其他數(shù)據(jù)庫,需要自行安裝。

          接下來安裝Django(在widnwos下):
          1、從http://www.djangoproject.com/download/下載Django
          2、在windwos下使用python setup.py install 安裝(我原想使用python setup.py develop安裝,沒成功),前提是設(shè)置好python環(huán)境和已安裝setuptools。
          3、將python安裝目錄下lib\site-packages\django\bin\django-admin.py 復制到python安裝目錄下的\scripts\目錄。

          下面可以測試一下,啟動cmd窗口:
          C:\Documents and Settings\Administrator>python
          >>> import django
          >>> django.VERSION
          (1, 2, 0, 'rc', 1)

          安裝OK。開始創(chuàng)建第一個project吧。

          1、選定一個目錄,啟動cmd窗口:
          F:\temp>django-admin.py startproject mysite2
          F:\temp>
          這將在當前目錄下新建一個project,名字為mysite2(注意不要使用"django"等保留字作為project名稱),目錄結(jié)構(gòu)為:

          2010-05-30  13:29    <DIR>          .
          2010-05-30  13:29    <DIR>          ..
          2010-05-30  13:29               557 manage.py
          2010-05-30  13:29             3,387 settings.py
          2010-05-30  13:29               561 urls.py
          2010-05-30  13:29                 0 __init__.py
                         4 個文件          4,505 字節(jié)
                         2 個目錄 29,717,716,992 可用字節(jié)
          • __init__.py:暫時是空的,標識這個目錄是一個python package。
          • manage.py: Django的命令行工具集,使用方法:python manage.py ***
          • settings.py: project 的配置文件
          • urls.py: project的url路徑管理配置文件
          先了解這么多吧,詳細的文件內(nèi)容單獨再說。

          2、啟動http server:
          F:\temp\mysite2>python manage.py runserver
          Validating models...
          0 errors found

          Django version 1.2 rc 1, using settings 'mysite2.settings'
          Development server is running at http://127.0.0.1:8000/
          Quit the server with CTRL-BREAK.

          打開web browser,輸入地址http://127.0.0.1:8000/,可以看到server已經(jīng)啟動了。當然,如果你希望換一個端口,可以使用:
          python manage.py runserver 端口號

          3、接著配置database:

          打開settings.py,在database節(jié)點下:

          • ENGINE 數(shù)據(jù)庫引擎名稱,可以是'django.db.backends.postgresql_psycopg2''django.db.backends.mysql''django.db.backends.sqlite3'

          • NAME  數(shù)據(jù)庫名稱, 如果使用sqlite,這里就是db文件絕對路徑,比如f:/temp/mysite/data.db

          • USER 數(shù)據(jù)庫用戶名,sqlite不需要

          • PASSWORD 密碼,sqlite不需要

          • HOST 數(shù)據(jù)庫主機ip,sqlite不需要

          建議使用sqlite。如果使用其他如PostgerSQL、MySQL等,在配置之前要確保先在數(shù)據(jù)庫中已建立相關(guān)項目。

          在setting.py中的INSTALLED_APPS節(jié)點下,默認有以下一個APP:
              'django.contrib.auth',用戶認證
              'django.contrib.contenttypes',內(nèi)容管理?
              'django.contrib.sessions',session控制
              'django.contrib.sites',多site管理
          如果用不到該app,可以注釋掉,這將不在database中建立相關(guān)管理tables。然后使用:
          python manage.py syncdb
          建立相應的tables。

          4、在mysite2目錄下,新建一個自己的app:
          python manage.py startapp polls
          將新建一個polls目錄,內(nèi)容如下:
          2010-05-30  14:07    <DIR>          .
          2010-05-30  14:07    <DIR>          ..
          2010-05-30  14:07                60 models.py
          2010-05-30  14:07               537 tests.py
          2010-05-30  14:07                27 views.py
          2010-05-30  14:07                 0 __init__.py

          5、創(chuàng)建models:
          編輯models.py,內(nèi)容如下:
          from django.db import models

          class Poll(models.Model):

          question = models.CharField(max_length=200)

          pub_date = models.DateTimeField('date published')

          class Choice(models.Model):

          poll = models.ForeignKey(Poll)

          choice = models.CharField(max_length=200)

          votes = models.IntegerField()

          這里有兩個model,Poll和Choice,還存在一個one Poll to many Choice關(guān)系。

          在setting.py 中將polls 加入到installed app 節(jié)點中,然后使用python manage.py syncdb 將在database中新建相應的tables。table name 分別是:

          polls_poll,polls_choice。

          當然還有其他一些manage command:

          6、使用django shell:

          python manage.py shell

          這個cmd背后做了兩件事:一是將mysite2加入到sys.path中去;二是新建了DJANGO_SETTINGS_MODULE環(huán)境變量,可以引用settings.py中的配置內(nèi)容。

          接下來就可以測試了。


          評論

          # re: [1] Django筆記:Django 入門[未登錄]  回復  更多評論   

          2012-02-23 15:36 by mark
          你好,我在安裝的時候,沒有看到這個啊,

          script目錄只在tools文件里,
          將python安裝目錄下lib\site-packages\django\bin\django-admin.py 復制到python安裝目錄下的\scripts\目錄。
          還有就是我想創(chuàng)建project的時候,F(xiàn)盤無法創(chuàng)建,顯示invalid syntax!不知道是什么原因呢,
          主站蜘蛛池模板: 神木县| 芜湖市| 花莲市| 灵璧县| 吉林省| 丹寨县| 宜黄县| 错那县| 习水县| 庄河市| 浦县| 华宁县| 二连浩特市| 江达县| 治多县| 东城区| 台州市| 会同县| 中山市| 利川市| 松溪县| 大洼县| 会宁县| 九龙县| 来凤县| 虹口区| 乐亭县| 韶关市| 清水河县| 德江县| 新泰市| 昭苏县| 南靖县| 两当县| 乌拉特前旗| 阿克陶县| 瑞金市| 龙州县| 澄城县| 麻栗坡县| 滦南县|