少於 1 分鐘閱讀

範例

今天有devise生成的User,如果建立user後想要自動再建立對應的payment,該怎麼施作。

shell

rails g devise:controllers users

config/routes.rb

devise_for :users, controllers: { registrations: "users/registrations" }

建立app/controllers/users/registrations_controller.rb

class Users::RegistrationsController < Devise::RegistrationsController
  after_action :create_default_payment, only: :create

  private

  def create_default_payment
    Payment.create_default(@user) if @user.persisted?
  end
end

參考

  1. http://stackoverflow.com/questions/6658351/devise-after-create-hook

更新時間:

留言