zoukankan      html  css  js  c++  java
  • django-初始化举例

    制定规范

    我们要编写一个名为“学习笔记”的web应用程序,让用户能够记录感兴趣的主题,并在学习每个主题的过程中添加日志条目。

    “学习笔记”的主页对这个网站进行描述,并邀请用户注册或登录。

    用户登录后,就可以创建新主题、添加新条目、以及阅读既有条目。

    建立虚拟环境

    虚拟环境是系统的一个位置,可以在其中安装包,并将其与其他Python包隔离。

    python -m venv ll_env

    # 如上述命令不可用,可安装virtualenv,并使用virtualenv来建立虚拟环境

    安装vritualenv

    pip install --user virtualenv

    或者使用Linux的系统包管理器来安装virtualenv

    使用virtualenv建立虚拟环境

    virtualenv llenv

     

    激活虚拟环境

    # windows

    ll_envScriptsactivate

    # linux

    source ll_env/bin/activate

     

    # 停止虚拟环境

    deactivate # 在虚拟环境中执行

    === 后面的步骤均在活动状态的虚拟环境中执行 ===

    安装Django

    pip install Django

    在Django中创建项目

    django-admin startproject learning_log .

    # 千万别忘记最后的点,否则部署应用程序时将遭遇一些配置问题,如果忘记,删掉目录重新执行

    # 创建如下文件结构

    # manage.py - 接受命令并将命令交给Django的相关部分去运行

    # learning_logsettings.py - 指定Django如何与系统交互及如何管理项目

    # urls.py - 告诉Django应创建那些网页来响应浏览器请求

    # wsgi.py - 帮助Django提供它创建的文件(Web Server Gateway Interface)

    创建数据库

    python manage.py migrate

    # 在使用SQLite的新项目中首次执行这个命令,Django将新建一个数据库

    # 在执行后,Django创建了db.sqlite3文件

    # sqlite是一种使用单个文件的数据库,是编写简单应用程序的理想选择。

    启动服务并查看

    python manage.py runserver [port] # 端口默认8000

     

    此处常见错误

    Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。

    原因:8000端口被占用

    解决:

    关闭占用8000端口的程序 https://www.cnblogs.com/PHM64123/p/7639271.html

    更改django启动端口 https://www.cnblogs.com/apple2016/p/8127055.html

    创建应用程序

    Django项目与Django应用程序的关系

    Django项目由一系列应用程序组成,它们协同工作,让项目成为一个整体。

    创建应用程序

    新打开一个终端/cmd窗口,进入ll_env所在目录,激活虚拟环境,执行如下命令

    python manage.py startapp learning_logs

    # 创建如下文件结构

     

    # learning_logsmodels.py

    导入了django.db.models模块,且指示在此文件中创建自己的模型。

    模型 - 告诉Django如何处理应用程序中存储的数据。

    在代码层面,模型就是一个类

    models.py其实是使用了ORM(Object Relation Mapping)的思想

    添加应用程序到项目

    learning_log/learning_log/settings.py

    在INSTALLED_APPS元组中添加创建的应用程序learning_logs

     

  • 相关阅读:
    最长公共子序列(LCS)
    数组分割问题
    Trie树
    BitMap(比特位)
    KMP算法——字符串匹配
    排序算法
    概率问题
    【设计模式】——访问者模式
    【设计模式】——解释器模式
    【设计模式】——享元模式
  • 原文地址:https://www.cnblogs.com/yc913344706/p/9169422.html
Copyright © 2011-2022 走看看