有人可以推荐一个好的宝石来处理联系人吗? [关闭]

Posted

技术标签:

【中文标题】有人可以推荐一个好的宝石来处理联系人吗? [关闭]【英文标题】:Can somebody recommend a good gem for contact handling? [closed] 【发布时间】:2012-03-31 22:44:43 【问题描述】:

我想存储带有地址和关系的个人/公司联系人。地址可以有多行用于街道、电话号码和电子邮件。如果有某种导出功能也不错。

联系处理似乎是一项常见的任务,所以我想知道其他人是如何完成这项工作的。

我查看了以下 gems 和应用程序:

https://github.com/pluginaweek/has_addresses

演示处理国家、地区和地址的参考实现

https://github.com/midas/addressable_record

将地址的组成模式封装到任何易于使用的库中

https://github.com/huerlisi/has_vcards

Rails 插件提供 VCard 等联系人和地址模型和助手

https://github.com/fraser/vpim-rails

vPim for rails 通过 用于“个人信息”交换的标准 iCalendar 和 vCard 数据格式

https://github.com/jwood/addressbook

存储电话号码、地址和打印邮寄标签的通讯簿 Web 应用程序 (Rails)

您是否在使用上述 gem 之一,您能推荐其他 gem 还是您自己实现(为什么以及如何)?

【问题讨论】:

如何从头开始构建的相关问题:***.com/questions/6140215/… 我可以提供更多信息以引起对这个问题的兴趣吗?还是一般问题? 当然 - 您在上面列出的每个 gem 或应用程序不满足您的需求的原因是什么?还是您正在寻找与您列出的人谈论他们的经历的人? 【参考方案1】:

地址处理实际上是一个非常复杂的主题。这就是有这么多不同实现的原因。看看 Martin Fowlers Party、Role Object 和 Accountability 模式。您可能还会遇到 i18n 问题,并且可能想要进行体面的标准化(街道、邮编、城市、州、国家对象和结构取决于国家/地区)。那么这些都是时间关系,您的应用程序需求决定了要注册多少历史记录。

【讨论】:

感谢您的回答。我查看了设计模式,它看起来很复杂。时间关系是什么意思? 一个人有一个电话号码实际上是指:一个人从一个时间点到另一个时间点使用一个电话号码。您甚至可能必须在添加此知识的时间点进行注册。查看分析模式【参考方案2】:

vPim 似乎是您所需要的。它有Rails support。

【讨论】:

是否有关于如何将其与 activerecord 一起使用的示例? @tonymarschall 根据谷歌快速搜索“vPim activerecord”和“vPim activerecord example”,似乎有很多。但是,我不知道其中哪些对您有用,因为我不是这个领域的专家。这可能是关于 SO 的其他问题的良好基础。 :)【参考方案3】:

自己动手

我会自己构建它并查看这些宝石以用于它们各自的目的:

Carmen(以及配套的 Rails gem Carmen-Rails) Snail

Carmen 在预先填充国家、州/省、地区字段方面做得很好,而 Snail 在存储和显示地址的其他部分方面做得很好。

令人惊讶的是那里没有完整的解决方案,但地址是一个挑剔的主题。

干杯,

日本

【讨论】:

以上是关于有人可以推荐一个好的宝石来处理联系人吗? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

有人可以推荐一个好的图像缓存库吗? [关闭]

有人可以为 java 推荐一个好的 unix syslog *client* 库吗? [关闭]

有人知道一个好的免费软件 sql 脚本生成器吗? [关闭]

从头开始实施更快的 Rcnn [关闭]

有人知道任何好的 PHP Codeigniter 自动表单生成器吗? [关闭]

我可以在案例陈述中使用 .include?() 吗?红宝石