赞
踩
文件->新建项目->选择Django。接着在控制台输入命令:
python -m django --version #查看版本
控制台界面如下所示:
如上图所示,在项目文件夹下找到settings.py文件,然后在settings.py文件头加上:
import os
接着运行迁移命令,如下所示:
python manage.py migrate
然后就可以用右上角的命令进行启动。也可以使用运行命令,如下所示:
python manage.py runserver
在主目录下新建views.py文件,然后键入内容:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello world ! ")
接着在urls中,添加路由,如下所示:
from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
#path('admin/', admin.site.urls),
path('hello/', views.hello),
]
启动项目,然后在浏览器输入:
http://127.0.0.1:8000/hello/
如下图所示:
在hello函数上下断点,然后启动以调试模式启动,就可以在调试django,如下图所示:
其它调试步骤,与python语言调试没有区别。
从官网上下载相应的数据库安装文件,然后新建数据库ZhiLiao。
在setting配置文件中,注释原来的数据库连接,然后新建mysql数据库连接,如下所示:
# DATABASES = {
# 'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': BASE_DIR / 'db.sqlite3',
# }
# }
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 默认
'NAME': 'zhiliao', # 连接的数据库
'HOST': '127.0.0.1', # mysql的ip地址
'PORT': 3306, # mysql的端口
'USER': 'root', # mysql的用户名
'PASSWORD': 'root123456' # mysql的密码
}
}
修改项目文件夹下的__init__.py文件,添加内容如下:
import pymysql
pymysql.install_as_MySQLdb()
如果没有可以在终端安装一个,命令如下:
pip install pymysql -i https://mirrors.aliyun.com/pypi/simple/
在终端输入如下命令,创建一个web项目:
python manage.py startapp web
添加最后一行,如下所示:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'web.apps.WebConfig', #添加记录
]
执行迁移命令,如下所示:
python manage.py makemigrations
python manage.py migrate #配置好参数之后执行迁移命令
"F:/Anaconda/envs/DjangoServerTest/python.exe" manage.py makemigrations
"F:/Anaconda/envs/DjangoServerTest/python.exe" manage.py migrate #配置好参数之后执行迁移命令
运行下面代码可以自动生成models模型文件:
django-admin.py startapp app #如果已经存在app ,不需要执行这行
python manage.py inspectdb > web/models.py #如果名称不一样, 请用你自己的app名称
新建数据库表,如下所示:
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for web_student
-- ----------------------------
DROP TABLE IF EXISTS `web_student`;
CREATE TABLE `web_student` (
`id` tinyint(4) NOT NULL AUTO_INCREMENT,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_unicode_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of web_student
-- ----------------------------
INSERT INTO `web_student` VALUES (1, 'Ogawa Ryota');
INSERT INTO `web_student` VALUES (2, 'Lin Yuning');
INSERT INTO `web_student` VALUES (3, 'Fujii Ryota');
INSERT INTO `web_student` VALUES (4, 'Nakamura Sakura');
INSERT INTO `web_student` VALUES (5, 'Ng Kwok Kuen');
SET FOREIGN_KEY_CHECKS = 1;
将数据库表转成模型文件。
python manage.py inspectdb > web/models.py #如果名称不一样, 请用你自己的app名称
#指定python
"F:/Anaconda/envs/DjangoServerTest/python.exe" manage.py inspectdb > web/models.py
步骤:编写url;编写视图(views);编写html(templates);启动web。
首先,在ZhiLiaoAI/urls.py中编写路由路径,如下所示:
from django.contrib import admin
from django.urls import path
from web import views
urlpatterns = [
path('', admin.site.urls),#主页
path('admin/', admin.site.urls),
path('student_list', views.student_list),
]
然后,在视图文件中web/views.py中编写视图显示,如下所示:
from django.shortcuts import render
from web import models
# Create your views here.
def student_list(request):
student_queryset = models.WebStudent.objects.all()
return render(request,"student.html",{"student_queryset":student_queryset})
其次,新建模板文件templates/student.html,内容如下所示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<table border="1">
<thead>
<tr>
<td>id</td>
<td>姓名</td>
</tr>
</thead>
<tbody>
{% for student in student_queryset %}
<tr>
<td>{{ student.id }}</td>
<td>{{ student.name }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>
最后启动服务器,在浏览器输入网址:http://127.0.0.1:8000/student_list
本文介绍了构建Django开发环境的详细步骤,在此基础上构建了一个简单的数据库访问项目,显示数据库内的数据。对于熟悉python语言的读者,想采用这种模式构建一个简单的服务器项目,来进行一些计算,确实是非常方便的。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。