我试图使用neo4j-driver将Django连接到Neo4j,但出现安全错误。
错误是:-neo4j.exceptions.SecurityError: Failed to establish secure connection to '[SSL: UNKNOWN_PROTOCOL] unknown protocol (_ssl.c:600)'
MacOSX中的Python版本3.4.3
我的依赖
django1.9
neo4j-driver==1.4.0
Run Code Online (Sandbox Code Playgroud)
代码 Views.py
from django.shortcuts import render
# Create your views here.
from neo4j.v1 import GraphDatabase,basic_auth
from django.conf import settings
from django.db import IntegrityError
from django.views.decorators.cache import cache_page
from django.http import HttpResponse
from django.contrib import messages
from django.http import HttpResponse, HttpResponseRedirect, JsonResponse,Http404
from django.http import StreamingHttpResponse
from django.shortcuts import render_to_response
from django.shortcuts import render
from django.template import RequestContext
from django.views.decorators.csrf import csrf_exempt …Run Code Online (Sandbox Code Playgroud) 我正在使用 janus 图,但它有很多缺点。所以我正在寻找其他图形数据库,如 neo4j。
我想阻止 janus 图的问题,因为回答这个问题会有所帮助:
我在使用 janusgraph 时遇到了这些问题,所以我不想重新启动它们。
我想删除这个Pessoa节点及其与其他节点的关系,
但我不想删除其他节点。
这个节点有一个Guid带值的ID 属性c40f314f-0ecf-42e1-b44d-85b6d72f134a
我试过
MATCH (n {ID: 'c40f314f-0ecf-42e1-b44d-85b6d72f134a'}) DELETE n;
Run Code Online (Sandbox Code Playgroud)
但是出现这个错误:
Neo.ClientError.Schema.ConstraintValidationFailed:无法删除节点<35>,因为它仍然有关系。要删除此节点,您必须先删除其关系。
我有大量高度连接的节点,有时我想从数据库中删除.通过几次遍历,我最后得到了一个我想要删除的节点列表:
for (Node nodeToDelete : nodesToDelete)
{
for (Relationship rel : nodeToDelete.getRelationships())
{
rel.delete();
}
nodeToDelete.delete();
}
Run Code Online (Sandbox Code Playgroud)
问题是无论我设置多大的Heap,我都会得到: java.lang.OutOfMemoryError:超出了GC开销限制
删除大型节点列表的最佳方法是什么?我知道在实际删除它们之前我必须首先删除它们之间的关系 - 我逐步完成代码,它似乎在删除关系时失败了.删除节点的功能是否比我的更好?一切都包含在一个非常重要的事务中,因为这个删除的任何部分都不允许失败 - 这可能是个问题吗?
谢谢!
我有一个Azure工作者角色(WR),应该使用以下命令从.cscfg文件中获取它的配置:
var setting = CloudConfigurationManager.GetSetting("My.Setting.Name");
Run Code Online (Sandbox Code Playgroud)
在模拟器中运行这很好,我得到:
Getting "My.Setting.Name" from ServiceRuntime: PASS.
Run Code Online (Sandbox Code Playgroud)
信息.但是,当我发布到我的远程环境时,我得到:
Getting "My.Setting.Name" from ServiceRuntime: FAIL.
Getting "My.Setting.Name" from ConfigurationManager: FAIL.
Run Code Online (Sandbox Code Playgroud)
消息.在Azure管理门户的"CloudServices/Configure"部分中,我可以看到配置中列出的设置,并且设置正确.
我正在使用Azure SDK 2.0
azure azure-worker-roles azure-web-roles azure-configuration
我知道我们可以使用
LOAD CSV WITH HEADERS FROM 'file:///nodes.csv' AS row
Run Code Online (Sandbox Code Playgroud)
在Neo4j中,但似乎默认文件夹是当前Neo4j DB下的导入目录.如果数据库位于磁盘D下,如何使用LOAD CSV(在Windows上)在磁盘E下加载csv文件?我曾尝试'file:///e:/XXX.csv','file:e:/xxx.csv'.它们都不能起作用......
我有一个ListBox包含一组'Expander'项目,我想做的是使IsExpanded每个属性的属性独占.例如,如果我有10个扩展器ListBox,我希望一次只打开一个.
这是我到目前为止:
<Window>
<Window.Resources>
<DataTemplate x:Key="NormalTemplate">
<Expander Margin="0" IsExpanded="True" Header="{Binding Model.Name}" Background="Green">
<Grid>
<StackPanel HorizontalAlignment="Stretch">
<TextBlock Text="{Binding Model.Description}" TextWrapping="Wrap" HorizontalAlignment="Stretch" Margin="0"/>
</StackPanel>
</Grid>
</Expander>
</DataTemplate>
</Window.Resources>
<Grid>
<ListBox ItemsSource="{Binding Groups}"
ItemTemplate="{DynamicResource NormalTemplate}"
/>
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?我没有与一个ListBox或者确实是扩展器绑在一起,哎呀 - 如果它需要改变的话我就不会束缚它.
我有一个连接到 Neo4j 数据库的 MVC Asp.Net 应用程序。在我的数据库中,实体(m:Movie)<-[r:HAS_WATCHED_MOVIE]-(u:User)之间存在关系。movieuser
我想要做的是按降序返回一个IEnumerable<Movie>包含前 3 部电影(顶级电影是HAS_WATCHED_MOVIE关系最多的电影)。
我已经想出了一个 Cypher 查询来做到这一点,它是这样的:
MATCH (m:Movie)<-[r:HAS_WATCHED_MOVIE]-(b)
RETURN m, COUNT(r)
ORDER BY COUNT(r) DESC
LIMIT 3
Run Code Online (Sandbox Code Playgroud)
由于我是 Neo4j C# 客户端的新手,我不确定如何在 C# 中编写此查询?