Yep, it'll do that. It's like C++ (can't remember if Java is the same way). But you can'r reference something before it's defined. 

But in this case we might want to think about how we have everything ordered in models. I can't remember off the top of my head, and I'm done looking at code for the night, so I'm just going to throw out an idea :p

So if the structure of our models is ordered logically this should, as far as I remember how we're doing ForeignKeys, work.

Order the models like:

- Classes that inherit from models.Model
- Equipment
- Component
    - Things that inherit from Component
- Unit
    - Things that inherit from Unit

Like I said earlier, and it's also a ticket in GitHub, I would like to split up the models. When someone new comes into this, looking at all of that in one place is just off-putting and much nicer to see split up correctly. But until we figure that out, this is the way to go. Unless it's already like this of course :p I'll look into it later though and leave you more comments if I think of anything.