一怼:横州侧畔千帆过,漏出你这个小瘪三,我劝天公重抖擞,劈死你这个王八蛋(by.阅后即瞎)

先说笔者所使用的版本,笔者使用的是django1.8.4的版本,不同版本可能有不同请按照实际情况处理,本文只做参考。

创建虚拟环境

虚拟环境的目的按照笔者的理解,它的作用就是:搭建独立的python运行环境,不与其他产生冲突。保证了程序运行的独立性和稳定性。
系统版本的不同可能有不同的,先说乌班图的如何创建。

乌班图创建虚拟环境

mkvirtualenv -p python3 虚拟环境的名字
退出命令:deactivate
开启命令:workon 虚拟环境的名字
删除命令:rmvirtualenv 虚拟环境的名字

Windows创建虚拟环境

安装一个名为virtualenv的包
在命令窗口输入一下命令系统会自动下载安装

pip install virtualenv

安装完成后创建虚拟环境

virtualenv 虚拟环境名

在创建的环境目录下查找打开Scripts文件夹
在Scripts目录下运行activate.bat

cd ../Scripts打开创建虚拟环境目录的文件夹
activate.bat

执行好这步之后我们就可以打开pycharm了
打开settings

点击那个小齿轮

在笔者标红的位置打开刚刚创建的虚拟环境添加python.exe并保存
点击齿轮下方的绿色加号添加我们要使用的包

创建Django项目

在我们的命令行下打开我们想项目的文件夹位置
输入

django-admin startproject 项目名字

这样我们就创建完成了我们的第一个Django项目
在pycharm中打开创建项目的文件夹。
我们看到如下文件
manage.py 项目管理文件,用来管理项目
watercar:项目同名文件夹
├── init.py表示我们这个文件可以被使用过
├── settings.py 配置文件(数据库,邮箱等的配置)
├── urls.py项目的所有的地址配置
└── wsgi.py 就是我们django 小型服务器的入口文件
进入虚拟环境后,我们注意到命令行的变化在输入命令前有了这样一个单词(venv) ,如果存在它,恭喜你进入虚拟环境了,我们的一切操作都离不开这个小东西的使用,所以程序报错一定要查看是否在虚拟环境里进行操作。

创建APP

我们创建APP的目的就是为了对Django项目进行可视化操作。
创建语句:

python manage.py startapp 模块名字

创建之后在INSTALLED_APPS中添加我们创建的模块

INSTALLED_APPS = ('django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','模块名字'
)

连接数据库

创建之后打开虚拟环境中的settings.py文件进行修改
首先我们我们要让这个项目来访问我们的数据库
在settings中找到DATABASES进行修改

DATABASES = {'default': {'ENGINE': 'django.db.backends.使用的数据库名称(mysql等)','NAME':'数据库名','USER':'用户名','PASSWORD':'密码','PORT':端口,'HOST':'地址'}
}

新建表

我们将数据库链接成功后我们在pycharm中创建我们的第一张表吧
在APP模块的models.py文件下输入如下代码。

class 表名(models.Model):user_name = models.CharField(max_length=20)password = models.CharField(max_length=20)email = models.CharField(max_length=20)phone = models.IntegerField()

其中models.后为数据类型
在输入完成后,我们进行迁移,在终端输入如下指令。

python manage.py makemigrations#生成迁移文件

在生成迁移文件后

python manage.py migrate#执行迁移文件

笔者在这里给读者简单解释一下,在我们的Django项目到数据库的连接中有一个orm中间控件,我们上传数据需要先将文件上传到orm中间控件上,然后上传。
所以我们需要生成迁移文件,后执行文件迁移后才能在数据库中查看到我们的上传内容。
PS:一定不要忘记安装对数据库进行操作的包

外键

笔者创建了表二存放地址,使用外键与表一进行关联。
什么是外键:外键,一对多的关系中,外键写在多的一方
书写位置models.py,创建语句:

class UserAddress(models.Model):detail = models.CharField(max_length=50)user = models.ForeignKey('表一')

orm查询

先说书写位置:APP模块下,views.py或models.py

orm查询语句
查询所有
表名.objects.all()
查询指定的对象
obj1 = 表名.objects.get(查找特征,例如id=1)
查询指定的字段
obj1.user_name
修改指定字段的值
obj1.password = 54321
obj3.user_name='老张'
obj3.password = 123456
obj3.email='123'
obj3.phone=123
obj3.save()
查询老张所有的地址
obj1 = 表名.objects.get(查找特征,例如id=1)
obj1.表2名_set.all()

在python中创建虚拟环境和Django对数据库的操作(一)相关推荐

  1. cx_oracle主备服务器,怎么在Python中使用cx_Oracle模块对Oracle数据库进行操作

    怎么在Python中使用cx_Oracle模块对Oracle数据库进行操作 发布时间:2021-03-17 16:32:34 来源:亿速云 阅读:67 作者:Leah 本篇文章为大家展示了怎么在Pyt ...

  2. 人工智能之配置环境教程二:在Anaconda中创建虚拟环境并在VsCode中使用

    人工智能之配置环境教程二:在Anaconda中创建虚拟环境安装pytorch并在VsCode中使用虚拟环境 作者介绍 一. 在Anaconda中创建虚拟环境 1. 进入本地终端 1.1 键盘使用**w ...

  3. anaconda中创建虚拟环境

    一.Anaconda的优点 Anaconda的的优点:在学习python的过程中,有的教程使用的是python2,有的教程使用的是python3,而python2和python3又有细微的差别,所以, ...

  4. anaconda在envs中创建虚拟环境

    在envs中创建虚拟环境 从base中进入到envs文件中指定其python版本(需用管理员身份运行) 进一步操作 进入到envs文件虚拟环境中 从base中进入到envs文件中指定其python版本 ...

  5. python中创建列表[]和list()哪个效率快?为什么快?快多少呢?

    python中创建列表的两种方式: # 方法一:使用成对的方括号语法 list_a = []# 方法二:使用内置的 list() list_b = list() 1. [] 是 list() 的三-四 ...

  6. 如何在 Python 中创建一个简单的神经网络

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 引言 在过去的几十年里,机器学习对世界产生了巨大的影响,而且它的普 ...

  7. python计算均方根误差_如何在Python中创建线性回归机器学习模型?「入门篇」

    线性回归和逻辑回归是当今很受欢迎的两种机器学习模型. 本文将教你如何使用 scikit-learn 库在Python中创建.训练和测试你的第一个线性.逻辑回归机器学习模型,本文适合大部分的新人小白. ...

  8. python按列输出_在python中创建漂亮的列输出

    我试图在python中创建一个很好的列列表,用于我创建的命令行管理工具. 基本上,我想要一个列表,如: [['a', 'b', 'c'], ['aaaaaaaaaa', 'b', 'c'], ['a' ...

  9. python 微信bot_使用Tweepy在Python中创建Twitter Bot

    python 微信bot by Lucas Kohorst 卢卡斯·科斯特(Lucas Kohorst) 使用Tweepy在Python中创建Twitter Bot (Create a Twitter ...

最新文章

  1. notepad++ 快捷键
  2. 基于DQN强化学习训练一个超级玛丽
  3. JAVA自学笔记22
  4. 详解Python 3.6.x程序打包并发布至pypi的完整过程
  5. python下载_安装_配置_以及第一行python程序---python工作笔记009
  6. 课时4:改进我们的小游戏
  7. timimg学习数据删了_如何评价Timing这个督促人学习的软件?
  8. 排序算法(java)——— 堆排序
  9. 怎样完整的转换PDF格式文件
  10. html代码实现全国地图分布,echarts基于canvas中国地图省市地区介绍代码
  11. python结巴分词_“结巴”分词:做最好的Python分词组件
  12. ubuntu 20.04 设定固定IP地址碰到的坑
  13. 计算机输入法无法输入小写字母,电脑打不出小写字母了怎么办
  14. 小米拒绝权限_小米应用商城:我下载的是快图,打开却是天天相册,还发扣费短信...
  15. random模块——随机数常用函数介绍
  16. Android RollBack机制实现原理剖析
  17. C语言编程之取某整数的位数
  18. Shell中for循环的几个常用写法
  19. springboot利用redis作为消息队列mq使用
  20. 算法之美——算法复杂性

热门文章

  1. JavaScript高级程序设计(第三版)学习笔记22、24、25章
  2. 交换机两个链路相连一些设置
  3. 黑马程序员--C语言基础之--sizeof()运算符的使用以及注意
  4. Windows10-1909各个版本进行下载地址汇总
  5. eclipse安装一直卡在安装中_Eclipse软件安装包+安装教程
  6. RFI to RCE challenge
  7. Node.js_1.1
  8. while语句的使用
  9. 【Maccmsv10 站群深度定制版 开发日志】核心功能:紧急优化模块
  10. 【Liunx】manjaro 配置vscode python开发环境