【问题标题】:How would one create a Drupal-based Genealogy Application?如何创建基于 Drupal 的家谱应用程序?
【发布时间】:2015-11-14 21:21:40
【问题描述】:

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

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

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

【问题讨论】:

    标签: php drupal-7 genealogy gedcom


    【解决方案1】:

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

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

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

    【讨论】:

    • 哇,太酷了。我想我错过了它,因为我的搜索缺少一些关键术语。我查看了 drupalmodules.com 和 drupal.org 上的家谱、gedcom 和其他术语,而不是家谱。尴尬的疏忽。不推荐 7.x 分支,但我想我应该为它做出贡献。感谢您的提示...布鲁斯
    【解决方案2】:

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

    【讨论】:

    • 是的,这就是问题或困难所在。由于有用于解析 gedcom 的 php 库,因此最好使用其中之一,因为 Drupal 是用 php 编写的。所以,挑战在于:他们上传他们的 gedcom,然后将其解析为其他格式,例如 csv 或 json,甚至是 RDF 序列化,并被保存。必须发生一些事情来告诉 Drupal 现在导入这个文件。某种触发器。
    【解决方案3】:

    已经有一些基于 Drupal 的家谱网站。我见过的最好的是https://ancestry.sandes.uk/,它是在Functional Drupal 7 Family History WebsiteGenealogy Discussion Group 中宣布的。我已经启动了一个项目,基于 Drupal7+OG 在 www.greatalbum.net 在 Drupal 上构建一个多用户、多家族树网站。我在herehere 讨论它。

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

    【讨论】:

    • 鼓励链接到外部资源,但请在链接周围添加上下文,以便您的其他用户了解它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防目标站点无法访问或永久离线。
    猜你喜欢
    • 2015-12-10
    • 2010-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-23
    • 1970-01-01
    相关资源
    最近更新 更多