Python Web开发模块Django2.2的学习笔记-1(Django制作web网页过程简述:(only for windows))

  1. 创建虚拟环境/python -m venv <venv_name>
  2. 激活虚拟环境/<venvname>/Scripts/activate
  3. 创建项目/django-admin.py startproject <project_name>
  4. 创建数据库/python manage.py migrate
  5. 运行服务器/python manage.py migrate
  6. 创建app/python manage.py <app_name>
  7. 添加超级用户/python manage.py createsuperuer
  8. 定义模型:
    打开文件夹<app_name>中的models.py文件,新建一个模型(即定义一个类)
  9. 激活模型:
    打开<project_name>/setting.py,将<app_name>添加到INSTALLED_APPS中
  10. 注册模型
    打开<app_name>/admin.py,导入模型,并注册模型
  11. 迁移模型/python manage.py makemigrations/python manage.py migrate
    由于model.py有修改,先创建教会Django如何修改数据库的迁移文件,再应用该迁移
  12. 配置URL:
    打开<project_name>/urls.py,导入<app_name>中的views(创建app时自动生成的文件),增加url模式
    url模式结构目前所理解的两种:
    一.增加一个url模式:
    path('', views.<view_function_name>[, name='<urlpattern_name>'])
    ''代表的是所要请求网页的主体之后的部分,例如上例指的就是http://localhost:8000,如果把''替换为'about/'则表示请求网页http://localhost:8000/about/ .
    views指的是文件<app_name>/views.py,view_function_name指的是返回网页内容时引用的视图函数,该函数后续步骤会编辑
    name='<urlpattern_name>'(可选)指的是对这个url模式进行命名,让我们能够在代码的其他地方引用它。每当需要提供到这个主页的链接时,我们都将使用这个名称,而不编写URL
    二.增加一组url模式:
    path('', include('<other urlpattern>'[, namespace='<namespace_name>']))
    如果在当前文件<app_name>/urls.py中新建一个extra_urlpatterns, 那么把'other urlpattern'替换为’extra_urlpatterns’,就可以使得urlpatterns合并其url视图处理函数
    参考:https://docs.djangoproject.com/zh-hans/2.2/topics/http/urls/
    namespace='<namespace_name>'(可选)指让我们能够将 learning_logs 的 URL 同项目中的其他 URL 区分开来,这在项目开始扩展时很有帮助。
    参考:《Python编程:从入门到实践》第193页
  13. 编写视图函数:
    打开<project_name>/views.py,编写函数
    目前了解两种方式
    一.若网页内容极其简单,导入HttpResponse,将HTML代码的字符串转换为HTML代码
    from django.http import HttpResponse

    return HttpResponse("<h1>Hello World!</h1>")
    二.网页内容复杂,将某个html文件作为参数加入到render(request, ‘<html文件>’)函数中
    return render(request, 'learning_logs/index.html')
  14. 编写模板(若在编写视图函数期间使用的是简单网页方法,自然不用模板):
    两种方法:
    一.不用继承:
    直接撸代码就是了
    二.继承父模板:
    注意父模板和子模板的格式
    参考:《Python编程:从入门到实践》第193&194页

猜你喜欢

转载自blog.csdn.net/weixin_43243428/article/details/91411646