Дело в том, что в случае метода вы фактически будете изменять константу при каждом вызове метода. Вы можете инициализировать такие константы только один раз. Это относится и к блокам. смотрите здесь:
m = [1, 2]
m.each do |t|
DOC_id = 123
DOC_id = 12
end
Тогда вы получите следующую ошибку:
(irb):12: warning: already initialized constant DOC_id
(irb):11: warning: already initialized constant DOC_id
(irb):12: warning: already initialized constant DOC_id
Доказательство того, что вы не можете переназначать константы даже в блоках.