连接mysql数据库
第一步:下载mysqlclient
pip install mysqlclient
第一步:新建一个数据库
第三步:在settings.py中配置mysql连接参数,如下:
DATABASES = {
'default': {
# 数据库引擎
'ENGINE': 'django.db.backends.mysql',
# 数据库名称
'NAME': 'vuedjango',
# 数据库用户名
'USER': 'root',
# 数据库密码
'PASSWORD': '525622',
# 数据库主机
'HOST': '127.0.0.1',
# 数据库端口
'PORT': '3306',
}
}
第四步:更改时区如下:
# 上海
TIME_ZONE = 'Asia/Shanghai'
第五步: 在你创建的app_name应用下的models.py中设置数据库,建立一个类,设置变量(不要忘了在INSTALLED_APPS里面安装你的应用)
class mod(models.Model):
id = models.AutoField(primary_key=True)
user= models.CharField(max_length=255)
password= models.IntegerField()
# 数据输出样式
def __str__(self):
return f"['id': {self.id}, 'user': {self.user}, 'password': {self.password}]"
class Meta:
db_table = 'us_pass'
# 指定数据表名,可以是需要新建表的表名
# 也可以是数据库中已存在的表
# 但变量名需要和数据库中保持一致。
第六步:执行如下命令,新建表
python manage.py makemigrations (应用名)
python manage.py migrate
实现自定义app
第一步:我们可以使用之前创建时的app应用也可以再次创建一个app创建指令如下news应用名
python manage.py startapp news
生成的 news 应用文件夹结构如下所示:
news // news 应用目录
├── __init__.py // 初始化模块
├── admin.py // 后台管理配置
├── apps.py // 应用配置
├── migrations // 数据库迁移文件目录
│ └── __init__.py // 数据库迁移初始化模块
├── models.py // 数据模型
├── tests.py // 单元测试
└── views.py // 视图
第二步:将自定义 App 添加到全局配置settings.py文件下
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'wed',
'news',
]
第三步:编写第一个视图
首先打开 news/views.py,写一个简单的视图函数,返回一串 Hello World!:
from django.http import HttpResponse
def index(request):
return HttpResponse('Hello World!')
第二步:将视图接入路由
接着,我们要让路由系统能够访问到刚才写好的视图函数。因此先实现子应用 news 的路由表,创建 news/urls.py 文件如下
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
第三步:将我们的news 路由表接入全局路由表urls.py
from django.contrib import admin
from django.urls import path
from django.urls import include
urlpatterns = [
path('admin/', admin.site.urls),
path('wed/', include('wed.urls')),
path('', include('news.urls')),
]
第四步:运行
python manage.py runserver