Django 模型是与数据库相关的,与数据库相关的代码一般写在models.py中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,只需要在settings.py中配置即可,不用更改models.py中的代码,丰富的API极大的方便了使用。


创建表

我们打开mysite/models.py文件,修改其中的代码如下:

#coding:utf8fromdjango.dbimportmodelsclassUserlist(models.Model):username=models.CharField(max_length=50)password=models.CharField(max_length=50)

我们新建了一个Userlist类,继承自models.Model, 一个用户清单里面有用户名和密码。这里用到了一种Field,更多Field类型可以参考教程最后的链接。


同步数据库

pythonmanage.pymakemigrationsMigrationsfor'learn':0006_userlist.py:-CreatemodelUserListpythonmanage.pymigrateOperationstoperform:Synchronizeunmigratedapps:staticfiles,messagesApplyallmigrations:admin,contenttypes,sessions,auth,learnSynchronizingappswithoutmigrations:Creatingtables...RunningdeferredSQL...InstallingcustomSQL...Runningmigrations:Renderingmodelstates...DONEApplyinglearn.0006_userlist...OK


注册表

打开mystie/admin.py文件,修改代码:

fromdjango.contribimportadminfromlearn.modelsimport*#Registeryourmodelshere.classUserlistAdmin(admin.ModelAdmin):list_display=['username','password']admin.site.register(Userlist,UserlistAdmin)


访问后台管理

http://127.0.0.1:8000/admin



如何删除表?

1、删除mysite/models.py中的对应类

2、删除mysite/admin.py中注册的类

3、数据库同步

pythonmanage.pymakemigrationspythonmanage.pymigrate


4、访问后台管理

可以看到已经没有了Userlist表了