django-初始化举例

制定规范

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

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

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

建立虚拟环境

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

python -m venv ll_env

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

安装vritualenv

pip install --user virtualenv

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

使用virtualenv建立虚拟环境

virtualenv llenv

 

激活虚拟环境

# windows

ll_env\Scripts\activate

# linux

source ll_env/bin/activate

 

# 停止虚拟环境

deactivate # 在虚拟环境中执行

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

安装Django

pip install Django

在Django中创建项目

django-admin startproject learning_log .

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

# 创建如下文件结构

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

# learning_log\settings.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_logs\models.py

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

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

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

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

添加应用程序到项目

learning_log/learning_log/settings.py

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

 

posted @ 2018-06-11 21:44  yc紫日  阅读(198)  评论(0编辑  收藏  举报