天天看點

django使用models建立表

Django 模型是與資料庫相關的,與資料庫相關的代碼一般寫在 models.py 中,Django 支援 sqlite3, MySQL, PostgreSQL等資料庫,隻需要在settings.py中配置即可,不用更改models.py中的代碼,豐富的API極大的友善了使用。

建立表

我們打開 mysite/models.py 檔案,修改其中的代碼如下:

1

2

3

4

5

<code>#coding:utf8</code>

<code>from</code> <code>django.db </code><code>import</code> <code>models</code>

<code>class</code> <code>Userlist(models.Model):</code>

<code>    </code><code>username </code><code>=</code> <code>models.CharField(max_length</code><code>=</code><code>50</code><code>)</code>

<code>    </code><code>password </code><code>=</code> <code>models.CharField(max_length</code><code>=</code><code>50</code><code>)</code>

我們建立了一個Userlist類,繼承自models.Model, 一個使用者清單裡面有使用者名和密碼。這裡用到了一種Field,更多Field類型可以參考教程最後的連結。

同步資料庫

6

7

8

9

10

11

12

13

14

15

<code>python manage.py makemigrations</code>

<code>Migrations </code><code>for</code> <code>'learn'</code><code>:</code>

<code>  </code><code>0006_userlist</code><code>.py:</code>

<code>    </code><code>-</code> <code>Create model UserList</code>

<code>python manage.py migrate</code>

<code>Operations to perform:</code>

<code>  </code><code>Synchronize unmigrated apps: staticfiles, messages</code>

<code>  </code><code>Apply</code> <code>all</code> <code>migrations: admin, contenttypes, sessions, auth, learn</code>

<code>Synchronizing apps without migrations:</code>

<code>  </code><code>Creating tables...</code>

<code>    </code><code>Running deferred SQL...</code>

<code>  </code><code>Installing custom SQL...</code>

<code>Running migrations:</code>

<code>  </code><code>Rendering model states... DONE</code>

<code>  </code><code>Applying learn.</code><code>0006_userlist</code><code>... OK</code>

系統資料庫

打開mystie/admin.py檔案,修改代碼:

<code>from</code> <code>django.contrib </code><code>import</code> <code>admin</code>

<code>from</code> <code>learn.models </code><code>import</code> <code>*</code>

<code># Register your models here.</code>

<code>class</code> <code>UserlistAdmin(admin.ModelAdmin):</code>

<code>    </code><code>list_display </code><code>=</code> <code>[</code><code>'username'</code><code>,</code><code>'password'</code><code>]</code>

<code>admin.site.register(Userlist,UserlistAdmin)</code>

通路背景管理

<a href="http://127.0.0.1:8000/admin" target="_blank">http://127.0.0.1:8000/admin</a>

<a href="https://s3.51cto.com/wyfs02/M00/8E/01/wKioL1izkrmDaBM_AAElT_I3cPI466.png" target="_blank"></a>

如何删除表?

1、删除mysite/models.py中的對應類

<a href="https://s2.51cto.com/wyfs02/M00/8E/02/wKioL1izk_iDjUSMAAR-YZsOOWI946.png" target="_blank"></a>

3、資料庫同步

4、通路背景管理

<a href="https://s1.51cto.com/wyfs02/M01/8E/04/wKiom1izlIzhEfQBAAEZVCY1DRM045.png" target="_blank"></a>

可以看到已經沒有了Userlist表了

本文轉自 曾哥最愛 51CTO部落格,原文連結:http://blog.51cto.com/zengestudy/1901574,如需轉載請自行聯系原作者

上一篇: 反射