1

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

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

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

4

3 回答 3

0

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

于 2015-11-14T21:30:07.853 回答
0

我个人对 Drupal 并不熟悉。但我知道已经有一个为 Drupal 编写的相当高级的程序,称为Family Tree,它是 Drupal.org 上的一个项目

您可能想检查该项目,或者甚至更好地为它做出贡献并改进它。

免责声明:我与该项目完全没有联系,我什至从未尝试过该模块。我只是碰巧意识到了这一点。

于 2015-11-18T06:42:04.327 回答
0

已经有一些基于 Drupal 的家谱网站。我见过的最好的一个是https://ancestry.sandes.uk/ ,它是在功能性 Drupal 7 家族历史网站家谱讨论组中宣布的。我已经启动了一个项目,以在 Drupal 上构建一个多用户、多家族树网站,网址为 www.greatalbum.net,基于 Drupal7+OG。我在这里这里讨论它。

为了能够上传 GEDCOM 文件,您需要一个 GEDCOM 模块来完成这项工作。我找到了这个基于 D8 的GEDCOM 沙盒模块,但它仍处于早期阶段,目前缺少代码。我已经联系了作者skybow,他将恢复代码。我可能会聘请某人为 GreatAlbum 站点开发模块,但它现在将在 D7 上。

于 2019-04-10T17:00:01.900 回答