海上月明

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

          [1] Django筆記:Django 入門

          Posted on 2010-05-30 14:48 pts 閱讀(2000) 評論(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。

          數據庫如果使用sqllite,python已經內建,不需另行安裝,如果需要使用myslq或其他數據庫,需要自行安裝。

          接下來安裝Django(在widnwos下):
          1、從http://www.djangoproject.com/download/下載Django
          2、在windwos下使用python setup.py install 安裝(我原想使用python setup.py develop安裝,沒成功),前提是設置好python環境和已安裝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。開始創建第一個project吧。

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

          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 字節
                         2 個目錄 29,717,716,992 可用字節
          • __init__.py:暫時是空的,標識這個目錄是一個python package。
          • manage.py: Django的命令行工具集,使用方法:python manage.py ***
          • settings.py: project 的配置文件
          • urls.py: project的url路徑管理配置文件
          先了解這么多吧,詳細的文件內容單獨再說。

          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已經啟動了。當然,如果你希望換一個端口,可以使用:
          python manage.py runserver 端口號

          3、接著配置database:

          打開settings.py,在database節點下:

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

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

          • USER 數據庫用戶名,sqlite不需要

          • PASSWORD 密碼,sqlite不需要

          • HOST 數據庫主機ip,sqlite不需要

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

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

          4、在mysite2目錄下,新建一個自己的app:
          python manage.py startapp polls
          將新建一個polls目錄,內容如下:
          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、創建models:
          編輯models.py,內容如下:
          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關系。

          在setting.py 中將polls 加入到installed app 節點中,然后使用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環境變量,可以引用settings.py中的配置內容。

          接下來就可以測試了。


          評論

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

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

          script目錄只在tools文件里,
          將python安裝目錄下lib\site-packages\django\bin\django-admin.py 復制到python安裝目錄下的\scripts\目錄。
          還有就是我想創建project的時候,F盤無法創建,顯示invalid syntax!不知道是什么原因呢,
          主站蜘蛛池模板: 清远市| 赫章县| 吴堡县| 琼中| 同德县| 林西县| 东山县| 岳阳县| 龙游县| 丰城市| 镇康县| 红原县| 东阿县| 抚顺市| 宣武区| 南漳县| 罗源县| 克什克腾旗| 潞城市| 辽宁省| 谷城县| 玉屏| 镇坪县| 呼玛县| 水城县| 视频| 岳西县| 重庆市| 图片| 宝应县| 长葛市| 东莞市| 武定县| 乌什县| 阿坝| 阿合奇县| 庄浪县| 广州市| 潢川县| 乌拉特后旗| 溆浦县|