title: Rails - Citier - Two level inheritance, Child Class don't inherit Middle Class attributes
body: <p>I'm trying to implement a structure like: GrandFather &lt;- Father &lt;- Son
  Using rails and the gem citier. This example should create 2 tables to represent the 3 classes: one for the Root class (GrandFather) and it's attributes and other to represent the Father and Son classes (since Son don't have additional attributes) and Father's attributes.</p>
  
  <pre><code>class GrandFather &lt; ActiveRecord::Base
      acts_as_citier
      attr_accessible :grand_father_attr, :type
  end
  
  class Father &lt; GrandFather
      acts_as_citier
      attr_accessible :father_attr
  end
  
  class Son &lt; Father
  
  end
  
  class CreateGrandFathers &lt; ActiveRecord::Migration
      def change
          create_table :grand_fathers do |t|
              t.string :type
              t.string :grand_father_attr
              t.timestamps
          end
      end
  end
  
  class CreateFathers &lt; ActiveRecord::Migration
      def up
          create_table :fathers do |t|
              t.string :father_attr
          end
          create_citier_view(Father)
      end
  
      def down
          drop_citier_view(Father)
          drop_table :fathers
      end
  end
  </code></pre>
  
  <p>But if I open rails console and type 'Son.new' the attribute from GrandFather is there, but the one from Father class is missing:</p>
  
  <pre><code>1.9.3-p362 :001 &gt; Son.new
  citier -&gt; Root Class
  citier -&gt; table_name -&gt; grand_fathers
  citier -&gt; Non Root Class
  citier -&gt; table_name -&gt; fathers
  citier -&gt; tablename (view) -&gt; view_fathers
     (1.1ms)   SELECT COUNT(*)
   FROM pg_tables
   WHERE tablename = 'grand_fathers'
  
  
     (0.5ms)   SELECT COUNT(*)
   FROM pg_views
   WHERE viewname = 'grand_fathers'
  
   =&gt; #&lt;Son id: nil, type: "Son", grand_father_attr: nil, created_at: nil, updated_at: nil&gt; 
  </code></pre>