如何创建基于 Drupal 的 Genealogy 应用程序?

How would one create a Drupal-based Genealogy Application?

我想使用 Drupal 构建 Genealogy 应用程序。我看到的困难在于允许用户上传 gedcom 文件并对其进行解析,然后根据该数据创建各种 Drupal 节点。 Drupal 中的节点是内容项。因此,我将个人和家庭作为内容类型,并且每个人都会将各种事件作为来自 gedcom 文件的字段。

gedcom 文件是家谱信息的通用格式。不同的桌面应用程序获取数据并将其转换为专有格式。我不确定如何完成的是为最终用户提供一个表单来上传他们的 gedcom 文件,然后让它使用 Drupal 创建节点,也就是内容项。我可以找到开源代码来解析 gedcom 文件,使用 python、perl 或其他语言。因此,我可以使用这些库之一从 JSON、XML、CSV 等格式的 gedcom 文件输出创建

Drupal 是用 PHP 编写的,挑战的另一个细节是对于最终用户,我不想让 him/her 找到在第一步中创建的文件(其中步骤一个是 gedcom 文件的解析和转换)并将其上传到 Drupal。就最终用户而言,我想以某种方式在一步中实现这一目标。不知何故,我需要一种方法来触发 Drupal 在数据转换为 JSON、XML 或 CSV 后导入数据。

您需要创建一个特定的模块(或搜索一个现有的模块)来获取 gedcom 文件并生成节点。这对用户来说很容易(只需上传一个文件)。

我个人并不熟悉 Drupal。但我知道已经有一个为 Drupal 编写的相当高级的程序,名为 Family Tree that is a project at Drupal.org.

您可能想检查该项目,或者更好地参与并改进它。

免责声明:我与该项目完全没有关系,我什至从未尝试过该模块。我只是碰巧知道它。

已经有一些基于 Drupal 的家谱网站。我见过的最好的是 https://ancestry.sandes.uk/, which was announced at Functional Drupal 7 Family History Website in the Genealogy Discussion Group. I've launched a project to build a multi-user, multi-family-tree website on Drupal at www.greatalbum.net, based on Drupal7+OG. I discuss it here and here.

为了能够上传 GEDCOM 文件,您需要一个 GEDCOM 模块来完成这项工作。我找到了这个GEDCOM Sandbox Module based on D8, but it's still very early stages, and the code is currently missing. I've contacted the author, skybow,他要恢复代码。我可能会聘请某人为 GreatAlbum 站点开发模块,但它现在将在 D7 上。