title: What is taggable_id for in tagging system?
body: <p>Most people probably figure this out on their own but I am a total noob so I will give this question a shot for the sake of other noobs.</p>
  
  <p>I am trying to set up <a href="https://github.com/rtconner/laravel-tagging" rel="nofollow">laravel-tagging</a>, a tagging system for Laravel framework, which probably has a similar structure to any other tagging system. It comes with 2 tables:</p>
  
  <ol>
  <li><code>tagging_tags</code></li>
  <li><code>tagging_tagged</code></li>
  </ol>
  
  <p><code>tagging_tags</code> is where tags are stored.</p>
  
  <p><code>tagging_tagged</code> is probably where tagged articles are stored, but I'm not sure.</p>
  
  <p>The table <code>tagging_tagged</code> contains a column <code>taggable_id</code>, which doesn't come as a primary key and has no auto increment on it: </p>
  
  <pre><code>Field             Type                Null    Key   Default Extra
  'id',             'int(10) unsigned', 'NO',  'PRI', NULL,   'auto_increment'
  'taggable_id',    'int(10) unsigned', 'NO',  'MUL', NULL,    
  'taggable_type',  'varchar(255)',     'NO',  'MUL', NULL,    
  'tag_name',       'varchar(255)',     'NO',         NULL,    
  'tag_slug',       'varchar(255)',     'NO',  'MUL', NULL,    
  </code></pre>
  
  <p>Is <code>taggable_id</code> a foreign key of an article that is tagged? Shouldn't it be tagged_id then? Can anyone point me to some newbie guide that explains tagging system structure or just explain what <code>taggable_id</code> is for?</p>
  
  <p>I apologize if this question is out of place.</p>