cpana/hierarchybundle

使用 Neo4j 和 Symfony 进行层级管理

安装: 2

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

公开问题: 0

类型:symfony-bundle

dev-master 2016-03-21 14:48 UTC

This package is not auto-updated.

Last update: 2024-09-26 00:37:06 UTC


README

使用 Neo4j 和 Symfony 进行层级管理

这个 Symfony 扩展管理公司层级,从 Neo4j 数据库检索和存储信息。层级基于分组:PHP 分组是软件开发组的部分,而软件开发组又是 IT 部分的部分,等等。用户是这些分组的一员,拥有不同的角色(经理、员工等)。

HierarchyBundle 包括一个前端,普通用户可以浏览数据,以及一个管理员区域,可以在此创建、编辑和删除信息。

这个扩展的想法来自 Neo4j 文档:https://neo4j.ac.cn/docs/stable/examples-user-roles-in-graphs.html HierarchyBundle 使用 Neo4jPHP 库 https://github.com/jadell/neo4jphp

安装

使用 composer:

composer require cpana/hierarchybundle

在 AppKernel 中注册该扩展:

new CPANA\HierarchyBundle\CPANAHierarchyBundle(),

将您的参数添加到 app/config/config.yml:

cpana_hierarchy:
	group_hierarchy_manager_neo4j:
		neo4j_user:  'user'
		neo4j_password:  'password'
		def_rel_type_group_to_group: 'PART_OF'
		def_rel_type_user_to_group: 'MEMBER_OF'
		root_group_id: '11111'
		manager_role_property: 'manager'
		default_property_group:  'name'
		default_property_user: 'name'

您需要指定层级根节点,通过在参数 "root_group_id" 中提供该节点的 Neo4j Id。

导入路由到 app/config/routing.yml:

cpana_hierarchy:
	resource: "@CPANAHierarchyBundle/Controller/"
	prefix:   /h
	type:     annotation

安装资产:

php app/console assets:install

在您的浏览器中输入项目路径并添加 app_dev.php/h/admin/home。如果您正在使用 Wiki 中提供的示例数据 https://github.com/cristianpana86/HierarchyBundle/wiki/Sample-data 搜索用户 Peter,您应该会看到类似以下内容

admin

待办事项

  1. 编写测试
  2. 处理有两个父节点的节点