03 Django基本应用结构

技术交流QQ群:1027579432,欢迎你的加入!

本教程来源于B站杨仕航Django2.0开发视频教程,如需转载,必须注明来源!

1.如果页面较多

  • 如果有多个文章界面,如下所示:
    www.xxx.com/blog/1/     HttpResponse("one")
    www.xxx.com/blog/2/   HttpResponse("two")
    www.xxx.com/blog/3/
    HttpResponse("three")
    ...
    www.xxx.com/blog/n/
    HttpResponse("more")
  • 如果有多个文章界面,每篇文章的格式相似,不需要写太多雷同的处理方法。每篇文章的区别在于标题和正文,可以用一个模板来解决。


    解决方法.png

2.Django App

  • 创建一个Django应用:python manage.py startapp 应用名称
    名为article的Django应用.png
  • 在article文件夹下的models.py文件中定义上一步中提到的模板,如下所示:
    # 定义模型
    
    class Article(models.Model):
        title = models.CharField(max_length=30)  # 文章标题
        content = models.TextField()  # 文章内容

3.同步数据库

  • 注意:在全局设置文件settings.py中注册名为Article的Django应用,如下所示:
    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'article',   # 添加的内容!
    ]
  • 依次执行两个操作:
    • python manage.py makemigrations:制造迁移
    • python manage.py migrate:迁移
    E:\Django\mysite
    $ python manage.py makemigrations
    Migrations for 'article':
    article\migrations\0001_initial.py
      - Create model Article
    
    E:\Django\mysite
    $ python manage.py migrate
    Operations to perform:
    Apply all migrations: admin, article, auth, contenttypes, sessions
    Running migrations:
    Applying article.0001_initial... OK
  • 怎么在管理员登录页面localhost:8000/admin/中展现模型文件models.py中已经定义的字段?解决方法:在Django应用article中的admin.py文件中添加如下内容:
    from .models import Article
    # Register your models here.
    
    # 注册模型
    admin.site.register(Article)
管理员登录界面已更新,模板文件中定义的字段已显示.png
  • 在管理员登录界面中添加第一篇文章的title和content,然后保存。如下图所示:


    添加第一篇文章.png
  • 如何将管理员登录界面汉化?解决方法:在全局设置文件settings.py中,将LANGUAGE_CODE改为'zh-Hans'即可
    管理员登录界面文字汉化.png
全部评论

相关推荐

11-28 16:00
已编辑
武汉理工大学 Java
Tom哥981:这份简历是“短期项目硬堆中大型系统技术”的“技术炫技式造假模板”,槽点密集到能当反面教材: ### 1. 「项目时长」和「技术密度」严重脱节,造假痕迹焊死在简历上 两个项目时长分别是**3个月、2个月**,但堆了Spring AI、Elasticsearch、MinIO、Kafka、ShardingSphere、Docker、Sentinel等近20个中大型项目才用的技术——正常情况下,光把这些中间件的文档看完+环境搭好,3个月都不够,更别说实现“AI多轮对话、分库分表、RBAC权限、大模型调用”这些功能。 说白了:你这不是“做项目”,是把“后端技术栈清单”往项目里硬塞,明摆着“只调用了API,没碰过核心逻辑”。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
12-18 11:21
优秀的大熊猫在okr...:叫你朋友入职保安,你再去送外卖,一个从商,一个从政,你们两联手无敌了,睁开你的眼睛看看,现在是谁说了算(校长在背后瑟瑟发抖)
选实习,你更看重哪方面?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务