Ho un problema quando tento di salvare un modello che ha più livelli di accept_nested_attribetus_for.Rails 4 Strong Parameters quando multiple_nested_attributes_for multiplo_per
Il mio caso d'uso è che esiste una pagina utente, in cui l'utente può creare più domande e anche più risposte per domanda.
Che cosa sta accadendo è che dal momento che non ci può essere più domande sulla pagina di inviare, l'hash parametri per l'utente, a presentare, si presenta come:
{"user"=>{"questions_attributes"=>{"0"=>{"desc"=>"question", "answers_attributes"=>{"0"=>{"ans"=>""}}}}}}
E, come tale, l'errore che sto ottenendo è " Parametro non digitato: 0 ". Come configurare correttamente i permessi dei parametri forti, in modo che possa salvare tutti i modelli correttamente? Posso scorrere le domande e salvarle individualmente, e questo funziona, ma speravo che ci sarebbe stato un modo più pulito per farlo.
user.rb
has_many :questions
accepts_nested_attributes_for :questions
question.rb
belongs_to :user
has_many :answers
accepts_nested_attributes_for :answers
answer.rb
belongs_to :question
users_controller.rb
def update
user = User.find_by_id params[:id]
user.questions.create question_params(params[:user])
end
def question_params(params)
params.require(:question_attributes).permit(:desc, {:answers_attributes => [:ans]}
end
Non funziona. Dicendo sempre l'attributo **: ans ** come ** Unpermitted ** – Sachin
Qualcuno ha trovato un modo per farlo funzionare? Ho lo stesso problema su Rails 5 – lkartono