has_one (ActiveRecord::Associations::ClassMethods)

    # File lib/active_record/associations.rb, line 726
          def has_one(association_id, options = {})
            reflection = create_has_one_reflection(association_id, options)

            module_eval do
              after_save "association = instance_variable_get(\"@\#{reflection.name}\")\nif !association.nil? && (new_record? || association.new_record? || association[\"\#{reflection.primary_key_name}\"] != id)\nassociation[\"\#{reflection.primary_key_name}\"] = id\nassociation.save(true)\nend\n"
            end

            association_accessor_methods(reflection, HasOneAssociation)
            association_constructor_method(:build,  reflection, HasOneAssociation)
            association_constructor_method(:create, reflection, HasOneAssociation)

            configure_dependency_for_has_one(reflection)
          end