2011-05-03 22 views
9

Por lo tanto, estoy buscando la integración de Django y Neo4j, pero no hay mucho al respecto ... Lo que quiero saber es si tengo un modelo como el aquí: Si desea agregar una nueva propiedad a un modelo, sería tan simple como hacer:Neo4j y django modelos

node.setProperty("newProperty", "something"); 

??

Además, ¿todas las consultas en django funcionarían? ¿Cómo se hace el recorrido?

Agradecería cualquier respuesta : D

Gracias.

Respuesta

7

Hemos estado trabajando en la actualización de la integración Neo4j/Django para trabajar con neo4j-rest-client - los frutos de nuestro trabajo son on GitHub, con algunos comentarios rápidos sobre mi blog.

Existen algunos pros y contras para nuestra integración. El impacto más evidente es nuestro uso de un cliente REST: puede usar una base de datos remota, mientras pierde bastante, en cuanto al rendimiento. OTOH, la integración funciona junto con una base de datos relacional, por lo que aún puede usar django.contrib cosas que se basan en el ORM original, y maneja muy bien los conjuntos de indexación y consulta.

Para hacer lo que quiera con el uso de neo4django, simplemente obtendría el nodo basado en neo4j-rest-client a partir de la instancia del modelo, y tendrá acceso a él.

model_instance.node['newProperty'] = 'something' 

Todavía estamos arranque en hacer que la integración más dinámica, apoyando recorridos/etc de una manera Pythonic, y (en la actualidad el más importante) la mejora del rendimiento. Si estás interesado, me encantaría recibir comentarios.

1

¿Has visto el blog de Tobias post about Django integration? Es un poco viejo ahora, pero sigue siendo relevante. Además, hay examples que puedes consultar también.

+0

Sí, lo vi, pero, como dijiste, es algo viejo, así que no estaba seguro de si algo ha cambiado o mejorado. Verificare los ejemplos, sí ... –

+0

Pero aún no entiendo si puedo agregar una nueva propiedad o no ... ¿Sería tan simple como editar mi models.py? –

+0

Ha pasado un tiempo desde que retoqué, pero debería ser, sí. Pensé que estabas hablando de agregar cosas dinámicamente a Nodos, en lugar de extender el Modelo –