2

購入したファイルを Web アプリのユーザーに配信する方法を探しています。基本的に、ユーザーは私のサイトから「製品」を購入し、その時点で購入したファイルをダウンロードできます (おそらく、私がプリコンパイルした zip ファイルになります)。

私は Rails 2.3.8 を使用しており、Braintree Solutions で支払い処理を行っています。ショートコードなどを使用してこれを達成する標準的な方法はありますか? Braintree には何かが組み込まれていますか? プラグイン/gem は存在しますか?

これが通常どのように行われるかについて、正しい方向へのプッシュを本当に探しています..

ありがとう!

4

1 に答える 1

1

あなたができることは、各Productモデルにhave_many承認されたユーザーを持たせることです。BrainTreeが、ユーザーが製品に対して支払ったOKを提供する場合、そのユーザーを承認済みユーザーリストに追加できます。したがってProductController、current_userが承認されたユーザーであるかどうかを確認し、承認されている場合はファイルをダウンロードし、そうでない場合はリダイレクトします。

Exsampleの場合:

product.rb

class Product < ActiveRecord::Model
  has_many approved_users, :class => User
end

product_controller.rb

class ProductController 
  def download
    @product = Product.find_by_id(:id)
    if @product.approved_users.includes?(current_user)
      # Give them the file
    else
      flash[:notice] = "You must buy the product first!"
      redirect_to product_sales_url(@product)
    end
  end
end 

またはそのようなもの。私の構文は少しずれているかもしれませんが、これでうまくいくはずです。

于 2011-03-14T20:09:07.680 に答える