为数据库中的所有对象创建缩短的URL

时间:2011-10-20 07:53:08

标签: ruby-on-rails ruby mongodb mongoid

除了我网站上的内容项之外,我想显示一个缩短的网址,以方便分享。

最有效的方式是什么,有没有合适的宝石/图书馆?

我在mongodb / mongoid堆栈上使用rails

enter image description here

2 个答案:

答案 0 :(得分:1)

应该足够简单(无论你是在Mongo / MySQL还是其他任何东西)。你需要的是一个小集合(mongo,如果我可以),它拥有你所追求的真实网址的某种MD5哈希值和真正的网址本身,例如:

ShortLink.create(:hash_link => Digest::MD5.hexdigest(resource_url(@resource)), :real_link => resource_url(@resource))

我建议添加另一条抓住这样的路线:

match "l/:key", "ShortLinks#show"

应该很容易。

答案 1 :(得分:0)

我认为您可以使用bitly gem来缩短您的网址。

以下链接可帮助您配置:

http://www.marketingformavens.com/blog/url-shortening-bitly-ruby-on-rails