python Django整合postgresql实现增删改查crud

在Django中使用PostgreSQL数据库进行增删改查(CRUD)操作是非常常见的需求。下面,我将提供一个详细的教程,涵盖如何在Django项目中使用PostgreSQL数据库进行基本的CRUD操作。这个教程将包括安装PostgreSQL、配置Django以使用PostgreSQL、创建模型、执行CRUD操作等步骤。

1. 安装PostgreSQL

首先,确保你的系统上安装了PostgreSQL。在Ubuntu上,你可以使用以下命令安装:

复制代码

bash

sudo apt update sudo apt install postgresql postgresql-contrib

在Windows上,你可以从PostgreSQL官方网站下载安装程序。

2. 安装 psycopg2

psycopg2是一个PostgreSQL适配器,用于Python。在Django项目中,你需要安装它来连接Django和PostgreSQL。

复制代码

bash

pip install psycopg2-binary

3. 配置Django以使用PostgreSQL

在你的Django项目的settings.py文件中,配置数据库设置以使用PostgreSQL。例如:

复制代码

python

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'your_db_name', # 你的数据库名称 'USER': 'your_db_user', # 你的数据库用户名 'PASSWORD': 'your_db_password', # 你的数据库密码 'HOST': 'localhost', # 数据库主机,默认是localhost 'PORT': '5432', # 端口,默认是5432 } }

4. 创建模型(Models)

在Django的models.py文件中定义你的模型。例如,创建一个简单的Article模型:

复制代码

python

from django.db import models class Article(models.Model): title = models.CharField(max_length=100) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True)

5. 迁移数据库

运行以下命令来创建数据库表:

复制代码

bash

python manage.py makemigrations python manage.py migrate

6. 执行CRUD操作

创建(Create)
复制代码

python

from .models import Article article = Article(title="My First Article", content="This is the content of my first article.") article.save()

读取(Read)
复制代码

python

articles = Article.objects.all() # 获取所有文章 for article in articles: print(article.title, article.content)

更新(Update)
复制代码

python

article = Article.objects.get(id=1) # 获取ID为1的文章 article.title = "Updated Title" # 更新标题 article.save() # 保存更改

删除(Delete)
复制代码

python

article = Article.objects.get(id=1) # 获取ID为1的文章 article.delete() # 删除文章

7. 使用 Django Admin 界面进行CRUD操作(可选)

你还可以通过Django自带的Admin界面进行CRUD操作。首先,确保你的模型已经注册到了Admin中:

复制代码

python

from django.contrib import admin from .models import Article admin.site.register(Article)

然后,运行以下命令来创建超级用户并启动开发服务器:

复制代码

bash

python manage.py createsuperuser # 创建超级用户以访问Admin界面 python manage.py runserver # 启动开发服务器

现在,你可以通过访问 http://127.0.0.1:8000/admin/ 来管理你的数据了。在Admin界面中,你可以看到Article模型的列表,并进行添加、编辑和删除操作。

以上就是在Django中使用PostgreSQL进行CRUD操作的基本步骤。如果你有任何问题或需要进一步的帮助,请随时提问!

相关推荐
张小姐的猫5 分钟前
【MySQL】数据类型
android·linux·数据库·c++·mysql·adb·php
java1234_小锋1 小时前
MySQL 宣布正式拥抱 AI
数据库·人工智能·mysql
sunburn-1 小时前
MySQL 数据库基础:从入门到熟练的完整教程
mysql·数据库开发·数据库架构
NineData1 小时前
MySQL 迁移到 OceanBase 怎么做?NineData 全量迁移、CDC 实时同步与数据校验指南
数据库·mysql·oceanbase
geovindu2 小时前
sql:SQL Views and Materialized Views using mysql 9.0
大数据·数据库·数据仓库·sql·mysql·数据库开发·数据库架构
梦影_2 小时前
MySQL进阶教程(二)—— 储存过程与触发器(下)
开发语言·数据库·后端·sql·mysql·oracle·数据库开发
仙逆GPT2 小时前
ChatGPT、Codex工程实战:Agent把OFFSET分页改成游标分页,查询更快了,为什么数据反而会重复和丢失?
mysql·chatgpt·codex·chatgptplus·chatgptpro
运维行者_6 小时前
应用性能监控怎么选?从调用链到用户体验的五个能力维度
运维·服务器·数据库·人工智能·mysql·性能优化·应用性能监控
波力海苔夹心脆67516 小时前
C# 正则表达式零基础入门:从“看得懂“到“会用“
经验分享·后端·mysql·正则表达式·c#
ClouGence18 小时前
数据如何随时可用?广西水牛先生的 MySQL 实时同步实践
数据库·mysql·数据分析