我想使用Drupal构建Genealogy应用程序。我看到的困难在于允许用户上传gedcom文件并对其进行解析,然后从该数据中创建各种Drupal节点。 Drupal中的节点是内容项。所以,我将个人和家庭作为内容类型,每个人都会有各种事件作为来自gedcom文件的字段。
gedcom文件是家谱信息的通用格式。不同的桌面应用程序获取数据并将其转换为专有格式。我不确定如何完成的是给最终用户一个表单来上传他们的gedcom文件,然后让它用Drupal创建节点,也就是内容项。我可以使用python,perl或其他语言找到解析gedcom文件的开源代码。因此,我可以使用其中一个库来创建JSON,XML,CSV等gedcom文件输出。
Drupal是用PHP编写的,另一个挑战的细节是,对于最终用户,我不想让他/她找到在第一步中创建的文件(其中第一步是解析和转换gedcom文件)并将其上传到Drupal。我希望以最终用户看到的方式在一个步骤中实现这一点。不知何故,我需要一种方法来触发Drupal在将数据转换为JSON或XML或CSV后导入数据。
答案 0 :(得分:0)
您需要创建一个获取gedcom文件并生成节点的特定模块(或搜索现有模块)。对用户来说很容易(只上传一个文件)。
答案 1 :(得分:0)
我并不熟悉Drupal。但我知道已经为Drupal编写了一个名为Family Tree that is a project at Drupal.org的相当高级的程序。
您可能希望检查该项目,甚至更好地为其做出贡献并改进它。
免责声明:我对该项目没有任何联系,我甚至从未尝试过该模块。我恰好意识到了这一点。
答案 2 :(得分:0)
有一些基于Drupal的家谱网站。我见过的最好的是https://ancestry.sandes.uk/,它是在Functional Drupal 7 Family History Website的Genealogy Discussion Group中宣布的。我已经启动了一个在Drupal上构建基于Drupal7 + OG的多用户,多家族树网站的项目,网址为www.greatalbum.net。我将讨论here和here。
要能够上传GEDCOM文件,您将需要一个GEDCOM模块来完成工作。我发现此GEDCOM Sandbox Module是基于D8的,但它仍处于早期阶段,目前缺少代码。我已经联系作者skybow,他将恢复代码。我可能会雇用某人来为GreatAlbum网站开发模块,但是现在它将在D7上。