配置數據庫
1 DATABASES = {
2 'default': {
3 # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
4 'ENGINE': 'django.db.backends.mysql',
5 'NAME': 'django', # Or path to database file if using sqlite3.
6 'USER': 'root', # Not used with sqlite3.
7 'PASSWORD': '', # Not used with sqlite3.
8 'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
9 'PORT': '', # Set to empty string for default. Not used with sqlite3.
10 }
11 }
运行 python manage.py shell 进入
輸入下面這些命令來測試你的數據庫配置:
>>> from django.db import connection
>>> cursor = connection.cursor()
如果沒有顯示甚麼錯誤信息,那麼你的數據庫配置是正確的。 否則,你就得 查看錯誤信息來糾正錯誤。
第一個應用程序
在`` mysite`` 項目文件下輸入下面的命令來創建`` books`` app:
python manage.py startapp books
這個命令並沒有輸出甚麼,它只在 mysite 的目錄里創建了一個 books 目錄。 讓我們來看看這個目錄的內容:
books/
__init__.py
models.py
tests.py
views.py
第一步是用Python代碼來描述它們。 打開由`` startapp`` 命令創建的models.py 並輸入下面的內容:
1 from django.db import models
2
3 class Publisher(models.Model):
4 name = models.CharField(max_length=30)
5 address = models.CharField(max_length=50)
6 city = models.CharField(max_length=60)
7 state_province = models.CharField(max_length=30)
8 country = models.CharField(max_length=50)
9 website = models.URLField()
10
11 class Author(models.Model):
12 first_name = models.CharField(max_length=30)
13 last_name = models.CharField(max_length=40)
14 email = models.EmailField()
15
16 class Book(models.Model):
17 title = models.CharField(max_length=100)
18 authors = models.ManyToManyField(Author)
19 publisher = models.ForeignKey(Publisher)
20 publication_date = models.DateField()
模型安裝
mysites目錄結構
manage.py
books/
__init__.py
models.py
mysite/
__init__.py
settings.py
urls.py
在setting里更改
INSTALLED_APPS = (
…,
'books', #1.3 應添加'mysite.books',
…,
)
app創建成功
現在我們可以創建數據庫表了。 首先,用下面的命令驗證模型的有效性:
python manage.py validate
validate 命令檢查你的模型的語法和邏輯是否正確。 如果一切正常,你會看到 0 errors found 消息。如果出錯,請檢查你輸入的模型代碼。 錯誤輸出會給出非常有用的錯誤信息來幫助你修正你的模型。
Django提供了一種更為簡易的提交SQL語句至數據庫的方法: `` syncdb`` 命令
python manage.py syncdb
執行這個命令後,將看到類似以下的內容:
Creating table books_publisher
Creating table books_author
Creating table books_book
Installing index for books.Book model
这样就建好了一app 并且创建了三个表
如果只是建一app然后激活只需执行以下步骤
- 配置数据库
- python manage.py startapp books
- setting里更改INSTALLED_APPS 激活app(添加'appname',)