project Web 应⽤程序
Django ⼊门
1建立项目
2创建应用程序
建立项目
创建项目
建立虚拟环境
python -m venv ll_env
激活虚拟环境
.ll_envScriptsactivate
安装 Django
# 更新pip
python.exe -m pip install --upgrade pip
# 安装Django
pip install django
在Django中创建项目
django-admin startproject ll_project
ls
ls ll_project
创建数据库
python manage.py migrate
ls
查看项目
将生成网址输入浏览器
创建应用程序
打开激活的虚拟环境并查看相关文件
#打开激活的虚拟环境并查看相关文件
.ll_envScriptsactivate
python manage.py startapp learning_logs # 搭建创建应⽤程序所需的基础设施。
ls
ls learning_logs/
定义模型
打开⽂件 models.py
创建模型
class Topic(models.Model): # 创建⼀个名为 Topic 的类,并继承 Model
"""⽤户学习的主题"""
text = models.CharField(max_length=200) # models.CharField设置存储文本属性,max_length=200大小为200字符
date_added = models.DateTimeField(auto_now_add=True)
# models.DateTimeField记录⽇期和时间的数据 auto_now_add=True 自动传入当前日期
def __str__(self):
"""返回模型的字符串表⽰"""
return self.text
# 返回属性 text 的值
激活模型
打开 settings.py,修改INSTALLED_APPS
# 我的应⽤程序
'learning_logs',
# Django 默认添加的应⽤程序
Django 修改数据库,使其能够存储与模型 Topic 相关的信息
python manage.py makemigrations learning_logs
python manage.py migrate
Django 管理⽹站
01.创建超级⽤户
超级用户:Django 允许创建具备所有权限的⽤户
python manage.py createsuperuser
02. 向管理⽹站注册模型
from .models import Topic # 导⼊要注册的模型 Topic
admin.site.register(Topic) # admin.site.register()让 Django 通过管理网站管理模型
使⽤超级⽤户账户访问管理⽹站
http://localhost:8000/admin/
输入设置的账号密码
03.添加主题
单击Topics 进⼊主题⽹⻚
单击 Add Topic输入Chess 并单击 Save
单击 Add Topic输入Rock Climbing 并单击 Save
定义模型 Entry
class Entry(models.Model):
"""学到的有关某个主题的具体知识"""
topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
# models.ForeignKey(外键)关联主题 models.CASCADE(级联删除)在删除主题的同时删除所有与之相关联的条⽬
text = models.TextField() # 实例
date_added = models.DateTimeField(auto_now_add=True) # 创建顺序呈现条⽬,并在每个条⽬旁边放置时间戳
class Meta:
"""Meta 存储⽤于管理模型的额外信息"""
verbose_name_plural = 'entries' # 使⽤ Entries 表⽰多个条⽬
def __str__(self):
"""返回⼀个表⽰条⽬的简单字符串"""
return f"{self.text[:50]}..."
# 只返回 text 的前 50 个字符
迁移模型 Entry
.ll_envScriptsactivate
python manage.py makemigrations learning_logs
python manage.py migrate
向管理⽹站注册 Entry
from .models import Topic, Entry
admin.site.register(Entry)
返回 http://localhost/admin/,将看到 Learning_Logs 下列出了 Entries
单击 Entries 再选择 Add entry
从下拉列表中选择 Chess,并添加⼀个条⽬
The opening is the first part of the game, roughly the first ten moves or so. In
the opening, it's a good idea to do three things— bring out your bishops and
knights, try to control the center of the board, and castle your king.(国际象
棋的第⼀个阶段是开局,⼤概是前 10 步左右。在开局阶段,最好做三
件事情:将象和⻢调出来,努⼒控制棋盘的中间区域,以及⽤⻋将王
护住。)
Of course, these are just guidelines. It will be important to learn when to
follow these guidelines and when to disregard these suggestions.(当然,这
些只是指导原则。学习在什么情况下遵守、在什么情况下不⽤遵守这
些原则很重要。)
再创建⼀个国际象棋条⽬,并创建服务器托管网⼀个攀岩条⽬,以提供⼀些初始数据
In the opening phase of the game, it's important to bring out your bishops
and knights. These pieces are powerful and maneuverable enough to play a
significant role in the beginning moves of a game.(在国际象棋的开局阶
段,将象和⻢调出来很重要。这些棋⼦威⼒⼤、机动性强,在开局阶
段扮演着重要的⾓⾊。)
One of the most important concepts in climbing is to keep your weight on
your feet as much as possible. There's a myth that climbers can hang all day
on their arms. In reality, good climbers have practiced specific ways of
keeping their weight over their feet whenever possible.(最重要的攀岩概
念之⼀是,尽可能让双脚承受体重。有⼈误认为攀岩者能依靠⼿臂的
⼒量坚持攀岩⼀整天。实际上,优秀的攀岩者都经过专门训练,能够
尽可能让双脚承受体重。)
Django shell交互式环境
python manage.py shell
from learning_logs.models import Topic
Topic.objects.all() # 获取模型 Topic 的所有实例
遍历查询集
获取对象
topics = Topic.objects.all()
for topic in topics:
print(topic.id, topic)
查看属性
t = Topic.objects.get(id=1)
t.text
t.date_added
查看与主题相关联的条⽬
t.服务器托管网entry_set.all()
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: 不黑箱,不抽卡,分分钟带你拿捏SD中的色彩控制 | 京东云技术团队
OSC 请你来轰趴啦!1028 苏州源创会,一起寻宝 AI 时代 服务器托管网 导言 颜色控制一直是AIGC的难点,prompt会污染、img2img太随机… 今天带来利用controlnet,实现对画面颜色的有效控制。都说AIGC是抽卡,但对把它作为工具而非…