Django Admin管理工具
Django提供了基于web的管理工具,是通过django.contrib实现。
在settings.py配置中的INSTALLED_APPS可以看到,如:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
在项目的urls.py文件中,配置url设置。
from django.conf.urls import url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
]
以上这些代码都是在创建项目的时候,默认生成的。
在浏览器输入127.0.0.1:8000/admin/
,出现:
创建一个超级用户
通过在项目目录下,打开命令行工具,输入python manage.py createsuperuser
会在命令行中出现输入用户名,邮箱,密码等。如图:
登入admin管理后台
创建一个model(详情参考Django模型
),在admin.py文件中,注册:
from django.contrib import admin
# Register your models here.
from testmodel.models import Person
admin.site.register(Person)
通过在浏览器中输入127.0.0.1:8000/admin/
,并登入。进入admin的后台管理界面,如:
admin后台管理有对数据库的增删改查的操作,非常方便。同时还有操作记录。功能强大。
支持复杂的模型
admin的后台管理页面,功能强大,可以处理复杂的数据模型。
在models.py文件中,创建Contact和Tag类。
class Contact(models.Model):
name = models.CharField(max_length=200)
age = models.IntegerField(default=0)
email = models.EmailField()
def __unicode__(self):
return self.name
class Tag(models.Model):
contact = models.ForeignKey(Contact)
name = models.CharField(max_length=50)
def __unicode__(self):
return self.name
在admin.py文件中注册,如:
admin.site.register([Contact, Tag])
执行创建表结构命令:
python manage.py makemigrations # 让 Django 知道我们在我们的模型有一些变更
python manage.py migrate # 创建表结构
刷新admin的后台管理页面,如图: