Moh*_*rki 9 django django-models neo4j neo4django
我用Neo4j(和Postgres一起)构建了一个Django应用程序,我发现这个Django集成名为neo4django,我想知道是否可以只使用neo4restclient,比如,不使用Neo4django会有什么缺点?是否只使用neo4-rest-client,给我更多的灵活性?当我使用Neo4Django创建模型时,似乎在建模图形数据库和关系数据库之间没有区别.我错过了什么吗?
谢谢!
Mat*_*ngo 11
你可以绝对继续使用neo4j-rest-client或py2neo,而不使用neo4django.以同样的方式,您可以随时使用任何其他数据库驱动程序使用Django,任何REST客户端等.
你会失去什么?模型DSL,内置查询(例如Person.objects.filter(name="Mohamed")),内置索引,以及Lucene,Gremlin和Cypher.有些事情会更容易 - 比如在节点上设置任意属性 - 但是您需要了解有关Neo4j如何工作的更多信息.
您还将丢失Django提供的与neo4django一起使用的一些快捷方式,get_object_or_404()以及一些与查询集一起使用的基于类的视图.
你会得到什么?DB上的绝对功率,更容易调整DB性能.尽管neo4django并不像Python领域中的一些传统ORM那样好,但是权力与提供的易用性之间的权衡是相似的.
也就是说,两者可以协同工作 - 您可以随时从neo4django下载到底层REST客户端节点和关系.只是用来model_instance.node从模型中获取底层的neo4j-rest-client节点对象,并from neo4django.db import connection获得一个包装好的neo4j-rest-client GraphDatabase.
关于你是否遗漏了一些东西:neo4django是为了重用强大的开发者界面而编写的 - Django ORM-所以它应该感觉类似于为Postgres编写模型.我曾经写过一些关于过去奇怪的感觉的文章.我认为问题的一部分可能是lib没有强调图形术语新图形感兴趣的开发人员期望 - 如遍历和模式匹配 - 而是在Django查询服装中使用这些技术.
我喜欢你的想法,或者知道你想要图书馆做的任何事情,它没有做:)祝你好运!
| 归档时间: |
|
| 查看次数: |
1795 次 |
| 最近记录: |