简单创建一个Django项目并配置neo4j数据库

创建项目,项目的文件夹就是项目的名称

创建项目的基本框架

安装djangorestframework

单击运行 查看浏览器运行效果:

运行效果如下:

创建应用(假如说是创建一个名为myapp的应用):

bash 复制代码
python manage.py startapp myapp

创建之后的项目目录应该是这样的:

bash 复制代码
myproject/
│
├── myproject/
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
│
├── myapp/
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── models.py
│   ├── tests.py
│   ├── views.py
│   └── migrations/
│       └── __init__.py
│
└── manage.py

安装了 django、neomodel 和 django - neomodel库来配置数据库连接

bash 复制代码
pip install django neomodel django-neomodel

配置 INSTALLED_APPS

打开项目的 settings.py 文件,将 django_neomodel 添加到 INSTALLED_APPS 列表中:

bash 复制代码
INSTALLED_APPS = [
    # ...
    'django_neomodel',
    'myapp',
    # ...
]

配置 Neo4j 连接信息

settings.py 文件中添加 Neo4j 的连接配置。可以使用 NEOMODEL_NEO4J_BOLT_URL 来指定连接字符串,示例如下:

bash 复制代码
# 配置 Neo4j 的连接信息
NEOMODEL_NEO4J_BOLT_URL = 'bolt://<username>:<password>@<host>:<port>'
<username>:Neo4j 数据库的用户名,默认是 neo4j。
<password>:Neo4j 数据库的密码。
<host>:Neo4j 数据库服务器的地址,若在本地运行,通常是 localhost。
<port>:Neo4j 数据库的端口,默认的 Bolt 端口是 7687。

配置 Django 启动时初始化 Neo4j 连接

在 myproject/init.py 文件中添加以下代码,确保在 Django 启动时初始化 Neo4j 连接:

bash 复制代码
import neomodel

from django.conf import settings

neomodel.config.DATABASE_URL = settings.NEOMODEL_NEO4J_BOLT_URL

现在我们编写视图函数 这个函数用来测试是否连接到neo4j数据库

bash 复制代码
from neomodel import db
from django.http import JsonResponse

def test_neo4j_connection(request):
    try:
        # 执行 Cypher 查询,这里简单查询所有节点
        results, meta = db.cypher_query("MATCH (n) RETURN n LIMIT 10")
        data = []
        for record in results:
            node = record[0]
            node_data = dict(node.items())
            data.append(node_data)
        return JsonResponse({'data': data})
    except Exception as e:
        return JsonResponse({'error': str(e)}, status=500)

为了能够访问这个视图函数,你需要在应用的 urls.py 文件(如果没有则需要创建)中配置 URL 映射,以及在项目的 urls.py 文件中包含应用的 URL 配置。

在 myapp 目录下创建 urls.py 文件,并添加以下代码:

bash 复制代码
from django.urls import path
from .views import test_neo4j_connection

urlpatterns = [
    path('test_neo4j_connection/', test_neo4j_connection, name='test_neo4j_connection'),
]

配置项目的 urls.py

打开 myproject/urls.py 文件,将应用的 URL 配置包含进来,示例如下:

bash 复制代码
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/', include('myapp.urls')),  # 这里的 'api/' 是自定义的前缀,你可以根据需要修改
]

最后运行项目 浏览器页面中出现已经接收到的json信息就说明连接成功了

相关推荐
毋语天2 分钟前
FastAPI 终极实战:ORM 数据库、RESTful 设计、中间件与依赖注入
数据库·中间件·restful·fastapi
shuair16 分钟前
redis红锁Redlock
数据库·redis·bootstrap
小新同学^O^17 分钟前
简单学习 --> 限流和熔断
数据库·python·学习
专注API从业者17 分钟前
用 Open Claw + 淘宝商品接口,快速实现电商商品监控与智能选品(附完整代码)
大数据·前端·数据结构·数据库
TDengine (老段)28 分钟前
TDengine 虚拟表实现原理
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
吃好睡好便好31 分钟前
用if…elseif…end语句输出成绩等级
开发语言·前端·javascript·数据库·学习·matlab·信息可视化
努力努力再努力wz32 分钟前
【Redis入门系列】:Redis 内部编码机制与 String 深度解析:SDS 底层实现、三种编码与核心命令详解
c语言·开发语言·数据结构·数据库·c++·redis·缓存
罗超驿35 分钟前
21.jdbc 学习笔记:从原理到实践的全流程梳理
java·数据库·mysql·面试
楠枬38 分钟前
Redis 分布式锁
数据库·redis·分布式
尚雷558041 分钟前
Oracle 18C 物理 DataGuard 搭建部署完整文档(适合开发测试)
数据库·oracle·dataguard