Django框架(二)---- 第一个Django应用程序
一、Django的settings.py设置相关:
在mysite/settings.py文件中:
就目前初学者来说,可以进行设置的有:
1、INSTALLED_APPS = [] : 将之前创建的app名称,加入到这个列表中;
2、DATABASES = {} : 设置数据库信息,Django默认使用sqlite3,也可以修改为mysql,oracle,postgresql,如:
当然,需要提前建立一个空的数据库 django_db;
3、设置时区、语言
1 from django.db import models 2 3 4 class Question(models.Model): 5 question_text = models.CharField(max_length=200) 6 pub_date = models.DateTimeField('date published') 7 8 9 class Choice(models.Model): 10 question = models.ForeignKey(Question, on_delete=models.CASCADE) 11 choice_text = models.CharField(max_length=200) 12 votes = models.IntegerField(default=0)
创建了两个类,Question和Choice,继承了models.Model类;
两个类中的变量名代表了在数据库中表的字段名,之后的Field类的实例表示每个字段是什么类型的数据;
ForeignKey,告诉了Django,每个Choice以一个单一的Question有关,一对一类型;
Django将根据所创建的模型model,来进行创建数据库表,创建用于访问Question和Choice对象的Python数据库访问API。
2、在polis/admin.py文件中,添加:
作用:将创建好的模型,显示在admin管理界面上
1 from django.contrib import admin 2 3 from .models import Question 4 5 6 admin.site.register(Question)
3、运行命令:python manage.py makemigrations polis
4、进行数据库迁移,:
运行命令:python manage.py migrate,在之前创建的库django_db中会出现相关的表,可以看到polis开头的两个表
中间会出现报错,提示没有安装mysqldb库,在py3中,无法安装mysqldb,使用的是pymysql库处理MySQL
因此,需要在mysite/__init__.py文件中加入代码,即可解决:
import pymysql
pymysql.install_as_MySQLdb()
三、创建管理员:
1、运行命令:python manage.py createsuperuser
2、运行服务,使用 127.0.0.1:8000/admin 登陆后台管理界面,可以看到之前创建的模型Question