当前位置: 首页 > news >正文

linux系统下配置Django虚拟环境的一些总结

在Web开发中使用Django框架,运用MVT模型具有高可扩展性、向后兼容、低耦合高内聚的优点。

此次配置Django虚拟环境使用的是linux系统。

 

1.首先,确保已经安装了Django框架

python3的Django安装方法:
在linuw终端下键入以下内容即可下载Django

pip3 install Django  

python2的Django安装方法:

pip install Django 

 

2.安装好Django,需要安装virtualenv

sudo easy_install virtualenvwrapper  
pip3 install Virtualenv 
pip install Virtualenv  

 

3.将Django和Virtualenv都准备好后,开始进行虚拟环境配置的步骤

在Linux终端键入以下命令

mkvirtualenv BlogJ #(这是自定义的项目名称) 

显示如下即操作成功。

此处配置时需注意使用的这个操作用户文件夹下须有/.virtualenvs这个隐藏文件夹

在Linux终端输入命令 ll,即可查看所有文件(含隐藏文件)

没有查找到 .virtualenvs 这个文件夹时,我们可以自己来创建一个。

在终端中输入命令

mkdir .virtualenvs  

如图所示,创建了一个.virtualenvs文件夹

然后输入vi .bashrc命令使用vim打开.bashrc文件

在文件中添加如下内容:

export WORKON_HOME=$HOME/.virtualenvs
 source /usr/local/bin/virtualenvwrapper.sh  

具体路径视安装virtualenvwrapper的路径而定

添加完以上内容后,在终端中输入命令

source ~/.bashrc  

即可使用virtualenvwarapper

 

4.至此开始使用Django命令来创建项目

 django-admin startproject BlogJ #(自定义项目名称)  

可以看到已经创建了一个BlogJ的项目文件夹

进入到项目文件夹可以看到 manage.py 文件,由此展开操作

python3 manage.py startapp Blog #(自定义项目名,使用python2键入命令时为: python manage.py startapp Blog)  

Blog文件夹中的文件是用于配置MVT模型的关键文件

Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理。

View,与MVC中的C功能相同,接收请求,进行业务处理,返回应答。

Template,与MVC中的V功能相同,负责封装构造要返回的html。

BlogJ文件夹中的settings.py文件用于设置项目

5.按照项目需求配置好model.py以及admin.py

 

6.配置好model.py后首先要执行

python3 manage.py makemigrations  
python3 manage.py migrate  

当执行了这个命令之后会在app下建立migrations,并记录下所有关于models.py的改动

但是这个改动还没有作用到数据库文件,数据库没有增加新的表

 接着执行migrate,这时候才真的把作用到数据库文件,产生对应的表

 

7.至此可以开始运行项目

python manage.py runserver  

并创建一个管理员

python manage.py createsuperuser  

至此便可对项目后台数据进行数据处理

 

PS:每次修改model文件后记得一定要重新执行 migrations 和 migrate 命令

转载于:https://www.cnblogs.com/Jaymiii/p/8507002.html

相关文章:

  • pwntools 文档学习
  • Notes 20180308 : 语句
  • 软件工程阅读笔记一
  • Servlet中forward和redirect的区别(转)
  • (1)常见O(n^2)排序算法解析
  • 性能测试---不同视角看性能和相关术语
  • java ee5的新特性
  • [LuoguP1141]01迷宫
  • webpack学习笔记1
  • POJ2187 旋转卡壳 求最长直径
  • 《Java并发编程的艺术》--Java中的锁
  • win10 vs2015源码编译tesseract4.0
  • Go语言备忘录(2):反射的原理与使用详解
  • ubuntu16.04 更换源
  • Django中间件middleware
  • 《Java编程思想》读书笔记-对象导论
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • Babel配置的不完全指南
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • IDEA 插件开发入门教程
  • LeetCode18.四数之和 JavaScript
  • Lucene解析 - 基本概念
  • mysql_config not found
  • Node 版本管理
  • Swoft 源码剖析 - 代码自动更新机制
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 免费小说阅读小程序
  • 如何选择开源的机器学习框架?
  • 微服务入门【系列视频课程】
  • 我这样减少了26.5M Java内存!
  • 回归生活:清理微信公众号
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #ifdef 的技巧用法
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • (1)(1.13) SiK无线电高级配置(五)
  • (C语言)逆序输出字符串
  • (day 12)JavaScript学习笔记(数组3)
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (二)springcloud实战之config配置中心
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (转)IOS中获取各种文件的目录路径的方法
  • (转)mysql使用Navicat 导出和导入数据库
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .NET/C# 检测电脑上安装的 .NET Framework 的版本
  • .NET/C# 阻止屏幕关闭,阻止系统进入睡眠状态
  • .net6Api后台+uniapp导出Excel
  • .Net调用Java编写的WebServices返回值为Null的解决方法(SoapUI工具测试有返回值)
  • .net连接oracle数据库