解決方法
optional: trueをつける!
参考: http://soccer1356abc.hatenablog.com/entry/2018/09/22/210221
user.rb
has_many :talent_users
has_many :talents, through: :talent_users
talent.rb
has_many :talent_users
has_many :users, dependent: :destroy, through: :talent_users
talent_users.rb
belongs_to :user
belongs_to :talent
belongs_to :shop, optional: true
user登録時にtalentも紐づけてcreateしたかった
この時shopは関係ないからoptional: true
をつける
ネストさせる
route.rb
resources :users do
resource :talent_users, only: [:create]
end
パラメーターに登録したいタレントのidが入るようにしておけばOK!
users_controller.rb
def user_params
params.require(:user).permit(
:email, :password, :tel ,:sex,
:first_name, :last_name, :first_name_kana, :last_name_kana, { :talent_ids=> [] })
end