# Using const\_missing to do automatic require

**URL:** <https://www.ruby-forum.com/t/using-const-missing-to-do-automatic-require/82359>\
**Category:** Ruby\
**Created:** [March 15, 2006, 9:30pm UTC](https://www.ruby-forum.com/t/using-const-missing-to-do-automatic-require/82359 "2006-03-15T21:30:54Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![unknown](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/4bbf92/32.png) [@unknown](https://www.ruby-forum.com/u/unknown)\
**Post date:** [March 15, 2006, 9:30pm UTC](https://www.ruby-forum.com/t/using-const-missing-to-do-automatic-require/82359/1 "2006-03-15T21:30:54Z")

</div>

I’d like to def const\_missing to require the appropriate file, without  
needing to put require ‘filename’ in the top of my code.

Something like

const\_missing MyMod::MyClass --\> require ‘my\_mod/my\_class’ ; return  
MyMod::MyClass

I got this idea from ActiveRecord.

Any comments / advice on using this for general programmign? Any  
reason not to? I think it would clean up a lot of the require lines,  
and make refactoring (and moving things around) easier, without really  
detracting.

---

<div class="post-metadata">

**Author:** ![unknown](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/4bbf92/32.png) [@unknown](https://www.ruby-forum.com/u/unknown)\
**Post date:** [March 15, 2006, 10:44pm UTC](https://www.ruby-forum.com/t/using-const-missing-to-do-automatic-require/82359/2 "2006-03-15T22:44:13Z")

</div>

It’s already built into Ruby. Try ‘ri autoload’.

T.

---

<div class="post-metadata">

**Author:** ![unknown](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/4bbf92/32.png) [@unknown](https://www.ruby-forum.com/u/unknown)\
**Post date:** [March 15, 2006, 10:53pm UTC](https://www.ruby-forum.com/t/using-const-missing-to-do-automatic-require/82359/3 "2006-03-15T22:53:24Z")

</div>

On Mar 15, 2006, at 3:43 PM, Trans wrote:

> It’s already built into Ruby. Try ‘ri autoload’.

Holy cow, I never knew that. Thanks for the info!

James Edward G. II

---

<div class="post-metadata">

**Author:** ![unknown](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/4bbf92/32.png) [@unknown](https://www.ruby-forum.com/u/unknown)\
**Post date:** [March 19, 2006, 7:29am UTC](https://www.ruby-forum.com/t/using-const-missing-to-do-automatic-require/82359/4 "2006-03-19T07:29:50Z")

</div>

Sorry - that’s something else.

Rails’ automatically loads the file just by mentioning a class of that  
name - you don’t need to configure it anywhere.

autoload allows you to specificy once which file to load for a class.  
It’s no shorter than just requiring it - I guess it’s a performance  
boost.
