{"record":{"id":"ea6e0fcce111cdbc","repo":"mongodb/mongoid","slug":"when-adding-a-n-klass-to-base-name-mong-ea6e0f","errorCode":null,"errorMessage":"When adding a(n) %{klass} to %{base}#%{name}, Mongoid could not determine the inverse foreign key to set. The attempted key was '%{inverse}'.","messagePattern":"When adding a\\(n\\) %(.+?) to %(.+?)#%(.+?), Mongoid could not determine the inverse foreign key to set\\. The attempted key was '%(.+?)'\\.","errorType":"exception","errorClass":"Mongoid::Errors::InverseNotFound","httpStatus":null,"severity":"error","filePath":"lib/mongoid/association/referenced/has_one/buildable.rb","lineNumber":42,"sourceCode":"            if query?(object)\n              # Handle array of hashes from $lookup aggregation\n              if object.is_a?(Array) && object.all? { |o| o.is_a?(Hash) }\n                doc = object.first\n                return doc ? Factory.execute_from_db(klass, doc, nil, selected_fields, execute_callbacks: false) : nil\n              end\n\n              execute_query(object, base) unless base.new_record?\n            else\n              clear_associated(object)\n              object\n            end\n          end\n\n          private\n\n          def clear_associated(object)\n            unless inverse\n              raise Errors::InverseNotFound.new(\n                @owner_class,\n                name,\n                object.class,\n                foreign_key\n              )\n            end\n            if object && (associated = object.send(inverse))\n              associated.substitute(nil)\n            end\n          end\n\n          def query_criteria(object, base)\n            crit = klass.criteria\n            crit = crit.apply_scope(scope)\n            crit = crit.where(foreign_key => object)\n            with_polymorphic_criterion(crit, base)\n          end\n","sourceCodeStart":24,"sourceCodeEnd":60,"githubUrl":"https://github.com/mongodb/mongoid/blob/0da0e23d71adfbad31128c18e5e2c8c301c6f7c4/lib/mongoid/association/referenced/has_one/buildable.rb#L24-L60","documentation":"Error \"When adding a(n) %{klass} to %{base}#%{name}, Mongoid could not determine the inverse foreign key to set. The attempted key was '%{inverse}'.\" thrown in mongodb/mongoid.","triggerScenarios":"Thrown at lib/mongoid/association/referenced/has_one/buildable.rb:42 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"0da0e23d71adfbad31128c18e5e2c8c301c6f7c4","analyzedAt":"2026-08-23T06:25:47.656Z","schemaVersion":2},"datasetVersion":"2026-08-23T08:06:27.607Z"}