如何在rails上使用ruby上传和解析vcard?

时间:2010-05-18 17:28:11

标签: ruby-on-rails vcard

我希望能够上传一张vcard并将其解析为我的应用程序模型。

我在想Paperclip是一种上传方式,但我不知道如何进行解析。

我在google上搜索过,唯一看起来相关的库是vpim,带有混合评论。

想要看看有什么好主意可以解决这个问题......谢谢。

2 个答案:

答案 0 :(得分:3)

vpim是制作和导入vCards的有用宝石,这里是如何使用它...

gem 'vpim', '~> 13.11.11' #include this in your gemfile

在你的控制器解码vcard

@vcard = Vpim::Vcard.decode(params[:import_file].read)

@contact.title = @vcard.title
@contact.email = @vcard.email
@contact.first_name = @vcard.name.given
@contact.last_name = @vcard.name.family
@contact.phone = @vcard.telephones[0]
@contact.fax = @vcard.telephones[1]
@contact.address.street1 = @vcard.address.street
@contact.address.city = @vcard.address.locality
@contact.address.state = @vcard.address.region
@contact.address.zip = @vcard.address.postalcode
@contact.company_name = @vcard.org.fetch(0)

你可以使用的另一个宝石是vcardigan

答案 1 :(得分:1)

使用vpim解析它