私はMentorと呼ばれる教師用のストライプを通して支払い処理をセットアップしようとしています。UrlGenerationErrorを修正する方法必要なキーが見つからない:[quid]エラー
このプロセスは、カードの詳細を追加した学生を、コンテンツをダウンロードできるページピックアップにリダイレクトすることから成ります。なんらかの理由で、キー[:quid]が欠落していると言われています。ここで
は私のトランザクション・コントローラです:
class TransactionsController < ApplicationController
def create
mentor = Mentor.find_by!(slug: params[:slug])
token = params[:stripeToken]
begin
charge = Stripe::Charge.create(
:card => token,
:amount => (mentor.price * 100).floor,
:description => current_user.email,
:currency => 'gbp'
)
@sale = mentor.sales.create(email_user: current_user.email)
redirect_to pickup_url(guid: @sale.guid)
rescue Stripe::CardError => e
@error = e
redirect_to mentor_path(mentor), notice: @error
end
end
def pickup
@sale = Sale.find_by!(guid: params[:guid])
@mentor = @sale.mentor
end
エンド
ここsale.rbさ:
class Sale < ActiveRecord::Base
before_create :generate_guid
belongs_to :mentor
private
def generate_guid
self.guid = SecureRandom.uuid()
end
end
アンここでは、エラーの概要です:
あなたの 'db/schema.rb'を投稿してください。 – brito
'routes.rb'を教えてください。 'quid'と' guid'のように見えます。 –
@Зелёныйright - 'config/routes.rb'ファイルに' pickup'ルートが定義されているところでは、 'guid'ではなく' quid'と入力したことがわかります。これを変更し、サーバーを再起動してもう一度お試しください! – omnikron