devise의 controller # create를 괴롭 혔지만 오류가 발생했을 때의 메모

2964 단어 Railsdevise
app/contoller/customers/registrations_controller.rb
class Customers::RegistrationsController < Devise::RegistrationsController
  before_action :configure_sign_up_params, only: [:create]

...
  def create
    super
    @customer.company_id = params[:company_id]
    binding.pry
    if @customer.save
      CustomerStatus.create(paid: false, room_plus: false, dozen_sessions: false, numbers_of_contractnt: 0, customer_id: @customer.id)
    end
  end
...
  protected

  def configure_sign_up_params
    devise_parameter_sanitizer.permit(:sign_up, keys: [:company_id])
  end

고객을 계속 저장할 수 없었습니다.


원인은 모델의 customer.rb의 여기였습니다.


devise는 belongs_to를 하면 신규 등록으로 잘 되지 않는 것 같아서 조심하자는 메모입니다.

해결책



일곱 번째 줄의 부분입니다.





이상!

좋은 웹페이지 즐겨찾기