海上月明

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

          [1] Django筆記:Django 入門

          Posted on 2010-05-30 14:48 pts 閱讀(2006) 評(píng)論(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ù)庫(kù)如果使用sqllite,python已經(jīng)內(nèi)建,不需另行安裝,如果需要使用myslq或其他數(shù)據(jù)庫(kù),需要自行安裝。

          接下來安裝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 復(fù)制到python安裝目錄下的\scripts\目錄。

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

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

          1、選定一個(gè)目錄,啟動(dòng)cmd窗口:
          F:\temp>django-admin.py startproject mysite2
          F:\temp>
          這將在當(dāng)前目錄下新建一個(gè)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 個(gè)文件          4,505 字節(jié)
                         2 個(gè)目錄 29,717,716,992 可用字節(jié)
          • __init__.py:暫時(shí)是空的,標(biāo)識(shí)這個(gè)目錄是一個(gè)python package。
          • manage.py: Django的命令行工具集,使用方法:python manage.py ***
          • settings.py: project 的配置文件
          • urls.py: project的url路徑管理配置文件
          先了解這么多吧,詳細(xì)的文件內(nèi)容單獨(dú)再說。

          2、啟動(dòng)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)啟動(dòng)了。當(dāng)然,如果你希望換一個(gè)端口,可以使用:
          python manage.py runserver 端口號(hào)

          3、接著配置database:

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

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

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

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

          • PASSWORD 密碼,sqlite不需要

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

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

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

          4、在mysite2目錄下,新建一個(gè)自己的app:
          python manage.py startapp polls
          將新建一個(gè)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()

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

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

          polls_poll,polls_choice。

          當(dāng)然還有其他一些manage command:

          6、使用django shell:

          python manage.py shell

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

          接下來就可以測(cè)試了。


          評(píng)論

          # re: [1] Django筆記:Django 入門[未登錄]  回復(fù)  更多評(píng)論   

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

          script目錄只在tools文件里,
          將python安裝目錄下lib\site-packages\django\bin\django-admin.py 復(fù)制到python安裝目錄下的\scripts\目錄。
          還有就是我想創(chuàng)建project的時(shí)候,F(xiàn)盤無法創(chuàng)建,顯示invalid syntax!不知道是什么原因呢,
          主站蜘蛛池模板: 苏尼特右旗| 界首市| 奎屯市| 乌兰浩特市| 东乌| 五大连池市| 台中县| 丽水市| 兴国县| 唐河县| 镇坪县| 湘西| 新营市| 广平县| 定州市| 科尔| SHOW| 塔城市| 沐川县| 许昌市| 浑源县| 甘谷县| 民权县| 大同县| 乃东县| 福鼎市| 岳普湖县| 汝城县| 正定县| 楚雄市| 鄂托克旗| 固始县| 广南县| 中宁县| 抚远县| 新宁县| 民乐县| 长顺县| 合阳县| 松潘县| 鹤庆县|