gpt4 book ai didi

python - 将 neo4django 与 apache 一起使用

转载 作者:太空宇宙 更新时间:2023-11-03 18:54:37 25 4
gpt4 key购买 nike

我正在尝试在 Apache 服务器上托管的 django 网站上使用 neo4j 数据库。我正在使用 neo4django。我已按照 http://neo4django.readthedocs.org/en/v0.1.8/index.html 中给出的说明进行操作。创建节点时出现以下错误:

error at /disk/ [Errno 111] Connection refused Request

我的模型.py:

import django.db
from neo4django.db import models

class Person(django.db.models.Model):
name = django.db.models.CharField(max_length=50, null=True, blank=True)
username = django.db.models.CharField(max_length=50, null=True, blank=True)
password=django.db.models.CharField(max_length=50, null=True, blank=True)
email=django.db.models.CharField(max_length=50, null=True, blank=True)

class Meta:
db_table='lt_profile'

class Pnode(models.NodeModel):
name=models.StringProperty()
#more fields

class Anode(models.NodeModel):
art_type=models.StringProperty(max_length=50)
mtime=models.StringProperty(max_length=200)

#relation:

我的设置.py:

NEO4J_DATABASES = {
'default' : {
'HOST':'localhost',
'PORT': 7474,
'ENDPOINT':'/var/www/graph_db'
}
}

DATABASE_ROUTERS = ['neo4django.utils.Neo4djangoIntegrationRouter']

发生错误的代码:

a = Anode.objects.create(art_type='py', mtime=str(file_mtime))
a.save()

我认为我需要更改 Apache 中的 port.conf 文件中的某些内容,但我不知道应该做什么。我尝试过这样的事情:

ports.conf中监听7474,但没有运气。任何帮助将不胜感激。谢谢

最佳答案

@Wes 的评论是正确的 - 您的端点应该设置为相对 URL,而不是文件路径。

From the docs ,尝试 'ENDPOINT':'/db/data',这是 Neo4j 的默认设置。

编辑:

其他一些建议:

您绝对不需要在 Apache 配置中添加任何内容。 Apache 从 Django 提供您的内容,但不控制您可以从 Django 访问哪些端口 - 它的配置文件仅涵盖外部用户可以访问的端口。事实上,如果 Apache 配置为监听 7474 并且它与 Neo4j 在同一台服务器上,则其中之一将无法使用该端口。

在您的代码中,您使用a = Anode.objects.create(...),然后使用a.save()Anode.objects.create()

的快捷方式
a = Anode(...)
a.save()

所以你实际上节省了两倍。我会使用其中之一来避免不必要地频繁访问数据库。

关于python - 将 neo4django 与 apache 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17564811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com