是否有可以将模型扩展为可共享的宝石?例如,如果某个项目是可共享的,则每个用户都可以获得该项目的唯一共享URL。如果存在,它可能以这种方式起作用:
class Item < ActiveRecord::Base
act_as_shareable
end
class User < ActiveRecord::Base
act_as_sharer
end
# Then can generate an unique share URL like this:
path = some_item.share_by(some_user).path # "/items/1?ref=v7D3SG251a"
[更新]
并且gem还会生成一个中间件,该中间件依赖params[:ref]
的任何请求,并设置请求者的cookie。
答案 0 :(得分:4)
我相信这样的解决方案不存在(每个用例都会有所不同,所以没有通用的宝石)。但是,您可以使用现有的gem构建它:
答案 1 :(得分:0)
上面的答案是正确的 - 机架关联公司将在URL中捕获任何?ref =并将其存储在cookie中。但是,与可分享无关。只需告诉您的关联公司使用?ref =获得促销信用,或者使用他们的参考号生成共享网址。
编辑:如果这是您想要的,那么?ref =可以更改为其他参数。