0

我不一定要寻找明确的答案(尽管欢迎这些答案!),但也许会指出正确的方向。

提供一些背景知识:我刚刚被一个非常知名的网站带到了一个 Web 开发项目中——如果你没有使用过它,我相信你至少听说过它。无论如何,我的任务是为已经存在的网站的特定区域单独创建一个高级会员模型。该区域目前可供所有人使用,但是他们计划仅在未来允许高级会员访问 - 这就是我进来的地方。唯一的问题是,我不知道从哪里开始,因为我从未创建过高级/免费会员之前的模型。

我目前的技能:精通Ruby和Rails。

任何输入或方向都会很棒!

谢谢。

编辑:感谢您的建议!没想到这么多角度。所有建议似乎都是很好的解决方案,我将进一步研究它们,看看哪个最适合该项目!

免责声明:如果此帖子不符合 SOF 政策,请随时将其删除。尽管如此,我不知道还有什么地方可以问,因为到目前为止,这是我解决 Rails Web 开发查询/问题的地方。

4

3 回答 3

2

我会查看这个 railscast,其中 Ryan Bates 介绍了“将 Stripe 添加到 Rails 应用程序”

http://railscasts.com/episodes/288-billing-with-stripe?view=asciicast

于 2013-05-08T23:52:58.247 回答
2

Use cancan for authorisation, requiring only a current_user method in your controller. The following is copied from the README:

Your permissions are defined in an Ability class. CanCan includes a Rails 3 generator for creating this class.

rails g cancan:ability

Define which user is authorised to what using the can method:

can [:update, :destroy], [Article, Comment]

Check whether user is authorised to :destroy a comment:

if can?(:destroy, @comment) then
   # user can destroy comment

There is more available on the website, but this should be enough to get you started.

于 2013-05-09T00:10:11.173 回答
1

您必须区分免费用户和高级用户。简单的方法是将某种“高级”布尔列/标志添加到用户模型中。

经常性交易的实际支付处理和处理要复杂得多。你应该看看 Recurly,因为它们很容易。如果你在美国,你甚至可以使用他们的支付网关。我不得不改用 Braintree,并且也可以推荐它们。

于 2013-05-09T09:04:54.083 回答