Я хочу сохранить данные из формы в 2 разных таблицах.
У меня есть это в контроллере учетной записи в полосе:
def create
@stripe_account = StripeAccount.new(stripe_account_params)
@user = User.find(params[:user_id])
@stripe_account.user_id = current_user.id
acct = Stripe::Account.create({
:country => "US",
:type => "custom",
legal_entity: {
first_name: stripe_account_params[:first_name].capitalize,
last_name: stripe_account_params[:last_name].capitalize,
type: stripe_account_params[:account_type],
dob: {
day: stripe_account_params[:dob_day],
month: stripe_account_params[:dob_month],
year: stripe_account_params[:dob_year]
},
address: {
line1: stripe_account_params[:address_line1],
city: stripe_account_params[:address_city],
state: stripe_account_params[:address_state],
postal_code: stripe_account_params[:address_postal]
},
ssn_last_4: stripe_account_params[:ssn_last_4]
},
tos_acceptance: {
date: Time.now.to_i,
ip: request.remote_ip
}
})
@stripe_account.acct_id = acct.id
#issue is here at @user
@user.stripe_token = acct.id
if @stripe_account.save!
format.html { redirect_to new_bank_account_path, notice: 'Stripe account was successfully created.' }
format.json { render :show, status: :created, location: @stripe_account }
else
format.html { render :new }
format.json { render json: @stripe_account.errors, status: :unprocessable_entity }
end
end
end
Форма:
<%= form_for ([@user, @stripe_account]) do | f | %>
Модель пользователя:
has_one :stripe_account
Stripe_account Модель:
belongs_to :users
acct.id сохраняется в таблице stripe_account, но не в пользовательской таблице. В пользовательской таблице есть запись user.stripe_account.
Как сохранить acct.id в обеих таблицах?