で関数を呼び出すしようと、私は三つのフィールドuser_idを持つモデルトークンを持っていないメソッドのエラーは、私がのuser_idで@tokenオブジェクトをインスタンス化コントローラ.INとunique_tokenをPRODUCT_IDとPRODUCT_IDは、私は【選択問題は私に何の方法エラーundefined method tokens
を与えないself.tokens.create!(unique_token: Digest::SHA1.hexdigest("random string"))
あるunique_tokenフィールドに関数内で、私はランダムな文字列を3回発生し、保存したい場合は、そのオブジェクトにsave_with_payment関数を呼び出すform.Thenから収集値.What私はここで間違っているのですか? User.find(1).tokens
またはProduct.find(1).tokens
【選択モデルの関連付けがUser has_many Tokens
Product has_many Tokens
あるようトン私は達成したい、私はそののuser_idまたはに関連し発生したunique_tokensの一覧を取得できるようにしたいがをPRODUCT_ID。 注:unique_tokenフィールドはもともとTokenモデルからのもので、user_idとproduct_idはrefの主キーです。インスタンス化されたオブジェクト
def create
@token=Token.new(params[:token])
if @token.save_with_payment
redirect_to :controller => "products", :action => "index"
else
redirect_to :action => "new"
end
end
class Token < ActiveRecord::Base
require 'digest/sha1'
def save_with_payment
# if valid?
# customer = Stripe::Charge.create(amount:buck,:currency => "usd",card:stripe_card_token,:description => "Charge for bucks")
#self.stripe_customer_token = customer.id
3.times do
self.tokens.create!(unique_token: Digest::SHA1.hexdigest("random string"))
end
save!
end
end
これはあなたが私が先に追加する必要性を感じていませんでしたコードをコメントアウト追加した上で見れば、それは一種のように、今では未定義と言い、私は前に持っていたコードでintefere有用であると思われるが、メソッドは有効ですか?値buckとstripe_card_tokenもフォームから来ています(Tokens.new(params [; token]))。 – katie