第二部分 创建应用程序(需要先激活venv环境)
2.0 django 网站管理
超级用户的创建:
python manage.py createsuperuser
账号和密码自己设置,邮箱可以不输入。
超级用户创建成功后,在本地服务器运行的情况下:(python manege.py runserver)
在浏览器中输入地址:127.0.0.1:8000/admin
通过账号和密码登录:(可实现对以后注册用户,权限和存储信息的管理)
2.1 创建应用程序 (如果你的终端运行了启动本地服务器操作,则新开一个终端,重新激活venv环境,输入如下命令:)
python manage.py startapp learning_logs
2.2 模型激活(我们之前是激活了虚拟环境venv,然后启动了本地服务器localhost=127.0.0.1:8000),现在需要将我们程序文件进行配置,并将模型激活。
打开项目文件learning_log中的setting.py文件,找到INSTALLED_APPS[],将我们的程序文件添加到里面。
2.3 web编程要素一,模型的编写:打开程序文件中的learning_logs/models.py
主要创建两个模型,一个是笔记的主题class Topic():
另一个是笔记主题相关内容:class Etry():
# 导入模型模块
from django.db import models
from django.contrib.auth.models import User # 导入用户模块,将主题一用户关联起来
# 创建笔记主题模块
class Topic(models.Model):
"""用户学习主题"""
text = models.CharField(max_length=200)
date_added = models.DateTimeField(auto_now_add=True)
owner = models.ForeignKey(User,on_delete=models.CASCADE) # 将主题与用户关联
def __str__(self):
"""返回模型的字符串提示"""
return self.text
# 创建笔记内容模块
class Entry(models.Model):
"""学到有关主题的具体知识"""
topic = models.ForeignKey(Topic,on_delete=models.CASCADE) #将笔记内容与主题关联起来
text = models.TextField()
date_added = models.DateTimeField(auto_now_add=True)
class Meta:
verbose_name_plural = 'entries'
def __str__(self):
"""返回模型字符串表示"""
return self.text[:50]+'...'
2.4 向管理网站注册模型Topic,Etry。
在learning_logs/admin.py文件中添加如下注册代码:
from learning_logs.models import Topic,Entry
admin.site.register(Topic)
admin.site.register(Entry)
2.5 我们需要将我们的程序文件learning_logs与数据库链接起来,让其做出相应的更改:
在终端中输入:
Python manage.py makemigrations learning_logs
创建了一个数据库迁移文件0001_initial.py
我们将通过这个文件来修改数据库:
python manage.py migrate
在当前的这个管理网站中,已经具备了添加学习笔记标题和,笔记内容的功能。不过只有当前的管理用户可以使用。
下一节:创建网页(django的shell命令行;学习笔记的主页)