mongodb/mongoid · error · Mongoid::Errors::ReadonlyAssociation

Attempted to modify the read-only association '%{name}' on '

Error message

Attempted to modify the read-only association '%{name}' on '%{klass}'.

What it means

Error "Attempted to modify the read-only association '%{name}' on '%{klass}'." thrown in mongodb/mongoid.

Source

Thrown at lib/mongoid/association/referenced/has_many_through/proxy.rb:61

            @_association = association
            @preloaded    = preloaded
          end

          def criteria
            @criteria ||= @_association.criteria(@_base)
          end

          private

          def _source
            @preloaded || criteria
          end

          public

          READONLY_METHODS.each do |meth|
            define_method(meth) do |*|
              raise Mongoid::Errors::ReadonlyAssociation.new(@_base.class, @_association)
            end
          end
        end
      end
    end
  end
end

View on GitHub (pinned to 0da0e23d71)

When it happens

Trigger: Thrown at lib/mongoid/association/referenced/has_many_through/proxy.rb:61 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of mongodb/mongoid@0da0e23d71 (2026-08-23). Data as JSON: /api/errors/873e630b3c0bafa9. Report an issue: GitHub.