Rubyは参照渡しですか、値渡しですか?
@user.update_languages(params[:language][:language1], params[:language][:language2], params[:language][:language3]) lang_errors = @user.errors logger.debug "--------------------LANG_ERRORS----------101-------------" + lang_errors.full_messages.inspect if params[:user] @user.state = params[:user][:state] success = success & @user.save end logger.debug "--------------------LANG_ERRORS-------------102----------" + lang_errors.full_messages.inspect if lang_errors.full_messages.empty? @userオブジェクトはメソッドのlang_errors変数にエラーを追加しますupdate_lanugages。@userオブジェクトの保存を実行すると、lang_errors変数に最初に格納されたエラーが失われます。 私がやろうとしていることは、もっとハックすることです(それは機能していないようです)。なぜ変数値が洗い流されるのか理解したいのですが。参照渡しを理解しているので、値が洗い流されることなくその変数に保持される方法を知りたいのですが。