Ruby on rails 订阅未在自定义条带窗体上创建,但正在条带窗体上创建订阅

Ruby on rails 订阅未在自定义条带窗体上创建,但正在条带窗体上创建订阅,ruby-on-rails,Ruby On Rails,当前,我的代码没有在DB中创建实际的订阅项目,但是它正在条带上创建订阅 我已经检查了日志,在订阅表单完成时,我看不到调用任何项目创建。我将条带代码从创建之前更改为创建之后,这似乎很有效,但这是毫无意义的,因为我们只能在用户通过条带订阅的情况下向用户提供订阅 有什么想法吗?谢谢 订阅\u controller.rb class SubscriptionsController < ApplicationController before_filter :authenticate_us

当前,我的代码没有在DB中创建实际的订阅项目,但是它正在条带上创建订阅

我已经检查了日志,在订阅表单完成时,我看不到调用任何项目创建。我将条带代码从创建之前更改为创建之后,这似乎很有效,但这是毫无意义的,因为我们只能在用户通过条带订阅的情况下向用户提供订阅

有什么想法吗?谢谢

订阅\u controller.rb

class SubscriptionsController < ApplicationController

    before_filter :authenticate_user!

    def new
        @subscription = Subscription.new
    end

  def create
    @subscription = Subscription.new(params[:subscription])
    if @subscription.save_with_payment
      redirect_to @subscription, :notice => "Thank you for subscribing!"
    else
      render :new
    end
  end

  def show
    @subscription = Subscription.find(params[:id])
  end

def subscription_params
    params.require(:subscription).permit(:stripe_card_token)
end


end
new.html.erb

<div class='panel panel-default'>

    <div class='panel-heading'>
        <h2>Subscribe</h2>
    </div>

    <div class='panel-body'>

    <%= form_for @subscription, :html => {:class => 'main-form'} do |f| %>

        <%= f.hidden_field :stripe_card_token %>

        <div id='stripe_error' class="alert alert-info" style='display:none'>
        </div>


        <span class="help-block">Nothing is billed to your card for 7 days. <b>Guaranteed. </b>
            <br>If you choose to continue after 7 days, only then will you be billed.</span>

              <div class='form-group'>
                <%= label_tag :card_number, "Credit Card Number" %>
                  <%= text_field_tag :card_number, nil, name: nil, class: 'form-control input-box', :placeholder => 'Credit Card Number' %>
              </div>

        <div class='row'>

            <div class="col-xs-6">
                <%= label_tag :card_code, "Security Code on Card (CVC)" %>
                <%= text_field_tag :card_code, nil, name: nil, class: 'form-control input-box', :placeholder => 'Security Code on Card (CVC)' %>
            </div>

            <div class="col-xs-6">
                <%= label_tag :card_month, "Card Expiration" %>
                <%= select_month nil, {add_month_numbers: true}, {name: nil, id: "card_month"} %>
                <%= select_year nil, {start_year: Date.today.year+1, end_year: Date.today.year+15}, {name: nil, id: "card_year"} %>
            </div>

        </div>



            <div>
                <%= f.submit "Subscribe", class: 'btn standard-button' %>
            </div>


        <% end %>
    </div>

</div>

订阅
{:class=>main form}do | f |%>
7天内不向您的卡支付任何费用。放心。

如果您选择在7天后继续,只有在7天后您才会收到账单。 '信用卡号码'%> “卡上安全代码(CVC)”%>
我可以通过删除以下内容来解决此问题:

创建前:使用付款保存

# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.

jQuery ->
  Stripe.setPublishableKey($('meta[name="stripe-key"]').attr('content'))
  subscription.setupForm()

subscription =
  setupForm: ->
    $('#new_subscription').submit (e) ->
      $('input[type=submit]').attr('disabled', true)
      subscription.processCard()
      return false

  processCard: ->
    card =
      number: $('#card_number').val()
      cvc: $('#card_code').val()
      expMonth: $('#card_month').val()
      expYear: $('#card_year').val()
    Stripe.createToken(card, subscription.handleStripeResponse)

  handleStripeResponse: (status, response) ->
    if status == 200
      $('#subscription_stripe_card_token').val(response.id)
      $('#new_subscription')[0].submit()
    else
      $('#stripe_error').text(response.error.message) 
      $('input[type=submit]').attr('disabled', false)
      false
<div class='panel panel-default'>

    <div class='panel-heading'>
        <h2>Subscribe</h2>
    </div>

    <div class='panel-body'>

    <%= form_for @subscription, :html => {:class => 'main-form'} do |f| %>

        <%= f.hidden_field :stripe_card_token %>

        <div id='stripe_error' class="alert alert-info" style='display:none'>
        </div>


        <span class="help-block">Nothing is billed to your card for 7 days. <b>Guaranteed. </b>
            <br>If you choose to continue after 7 days, only then will you be billed.</span>

              <div class='form-group'>
                <%= label_tag :card_number, "Credit Card Number" %>
                  <%= text_field_tag :card_number, nil, name: nil, class: 'form-control input-box', :placeholder => 'Credit Card Number' %>
              </div>

        <div class='row'>

            <div class="col-xs-6">
                <%= label_tag :card_code, "Security Code on Card (CVC)" %>
                <%= text_field_tag :card_code, nil, name: nil, class: 'form-control input-box', :placeholder => 'Security Code on Card (CVC)' %>
            </div>

            <div class="col-xs-6">
                <%= label_tag :card_month, "Card Expiration" %>
                <%= select_month nil, {add_month_numbers: true}, {name: nil, id: "card_month"} %>
                <%= select_year nil, {start_year: Date.today.year+1, end_year: Date.today.year+15}, {name: nil, id: "card_year"} %>
            </div>

        </div>



            <div>
                <%= f.submit "Subscribe", class: 'btn standard-button' %>
            </div>


        <% end %>
    </div>

</div>