私はdevise_token_authentication
gemを使用してトークンベースの認証レールAPIを構築しています。その後、Vendor
別の移行を通じてモデルにいくつかの追加フィールドを追加し、それらを許可するためにこれを書きました:
class ApplicationController < ActionController::Base
before_action :configure_permitted_parameters, if: :devise_controller?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:first_name, :last_name, :tax_number])
devise_parameter_sanitizer.permit(:account_update, keys: [:first_name, :last_name, :tax_number])
end
end
その後、別のモデルを追加しましたCustomer
rails g devise_token_auth:install Customer auth
次にroutes.rbで
Rails.application.routes.draw do
mount_devise_token_auth_for 'Vendor', at: 'vendor/auth'
mount_devise_token_auth_for 'Customer', at: 'customer/auth'
end
sign_up
顧客とやり取りしようとするたびに、'localhost:3000/customer/auth'
エラーメッセージが表示されました:ActiveModel::UnknownAttributeError: unknown attribute 'tax_number' for Customer.
モデルに対してのみ追加のフィールドを許可し、Vendor
「Customer」をスキップする方法はありますか?