系统:window 10
Python版本:Python 3.8
Django版本: 3.2.8
IDE:PyCharm 20
one code is ok! pip install django
神奇的python就是这么神奇,多想一秒都是对pip的不信任,pip就完事!
想要进一步学习关于Django框架更多知识的大佬请移步官方文档:
传送门:https://docs.djangoproject.com/zh-hans/3.2/
ps:Django官方文档提供了 你所需要知道的关于Django的一切
django-admin startproject mysite
一个简单的Django项目到这里就已经全部创建完成了,这个时候我们启动一下看看效果。首先进入到manage.py所在文件的目录,使用命令:python manage.py runserver
启动Django服务器
在浏览器输入 http://127.0.0.1:8000/, 就可以看到官方所说的小火箭啦
也就是:
在命令行输入 python manage.py startapp my_page
就可以创建一个自己的应用 my_page
结构:
简单介绍一下几个比较常用的文件:
from django.http import HttpResponse
def hello_world(request):
return HttpResponse("hello world! Who is moving bricks now ?")
from django.urls import path
from . import views #这是导入刚才编写的试图层文件
urlpatterns = [
path("hello_world!", views.hello_world),
]
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'my_page.apps.MyPageConfig' # 这是我们需要添加的内容
]
from django.contrib import admin
from django.urls import path, include # 导入nclude
urlpatterns = [
path('admin/', admin.site.urls),
path('my_page/', include("my_page.urls")) # 配置应用路由
]
Django非常的人性化,给我们提供了一个自带的默认的Sqlite数据库,这个数据库怎么样我也不知道,但是用起来还是很舒服的。
from django.db import models
class moveBricker(models.Model):
moveBricker_id = models.AutoField(primary_key=True) # 主键自增
moveBricker_name = models.TextField() # 字符串类型的变量
moveBricker_house = models.TextField()
moveBricker_car = models.TextField()
moveBricker_life = models.TextField()
def __str__(self):
return self.moveBricker_name
from django.contrib import admin
from .models import MoveBricker
admin.site.register(MoveBricker)
from . import models
...
def get_moveBricker(request):
all_moveBricker = models.MoveBricker.objects.all()
name1 = all_moveBricker[0].moveBricker_name
house1 = all_moveBricker[0].moveBricker_house
car1 = all_moveBricker[0].moveBricker_car
id1 = all_moveBricker[0].moveBricker_id
name2 = all_moveBricker[1].moveBricker_name
house2 = all_moveBricker[1].moveBricker_house
car2 = all_moveBricker[1].moveBricker_car
id2 = all_moveBricker[1].moveBricker_id
return_str = "id:%s, name:%s, house:%s, car:%s;" % (id1, name1, house1, car1) \
+ "id:%s, name:%s, house:%s, car:%s" % (id2, name2, house2, car2)
return HttpResponse(return_str)
urlpatterns = [
path("hello_world", views.hello_world), # 已经配置过了的
path("get_moveBricker", views.get_moveBricker) # 新配置的路由
]
启动服务器 python manage.py runserver
在浏览器中打开http://127.0.0.1:8000/my_page/get_moveBricker 。
这种方式真的是蠢死了,而且非常不方便,那么怎么才能舒服一下呢。那么接下来就引入我们的html页面了。
在my_page目录下新建templates,在templates下新建my_page目录,然后在my_page里面新建一个html文件,有点绕,上图
在get_moveBricker.html编写代码
<html lang="en">
<head>
<meta charset="UTF-8">
<title>get_moveBrickertitle>
head>
<body>
{% for move_bricker in move_brickers %}
<div>
<p>
id:{
{ move_bricker.moveBricker_id }},
name:{
{ move_bricker.moveBricker_name }},
house:{
{ move_bricker.moveBricker_house }},
car:{
{ move_bricker.moveBricker_car }};
p>
div>
{% endfor %}
body>
html>
这是一个循环代码,一眼就能看明白,无非就是语法的问题。其他的知识也与本次分享的Django框架的技术无法所以不多说
def get_moveBricker_list(request):
all_moveBricker = models.MoveBricker.objects.all()
return render(request, "my_page/get_moveBricker.html", {
"move_brickers": all_moveBricker
})
urlpatterns = [
path("hello_world", views.hello_world),
path("get_moveBricker", views.get_moveBricker),
path("get_moveBricker_list", views.get_moveBricker_list) #这是新配置的路由
]
链接:https://pan.baidu.com/s/1byeYl4DmaNTDqFV89v2YSw
提取码:pqt9
实验室都是python的深度学习项目,于是想着用python做一个网站玩玩,逛了一圈,看了很多大佬的博客,写的非常好!!!有些博客中的内容已经随着版本的更迭,可能无法运行起来了。又因为实验室项目的需求发现CS的架构比BS架构更香,于是学了一圈,发现又要去学新的技术啦!。就把自己学习Django3.2的过程记录了下来。希望能够帮助到有需要的小伙伴。祝搬砖的路上一切顺利!!!