<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -27,9 +27,10 @@ module Globalize
               self.globalize_proxy = Globalize::Model::ActiveRecord.create_proxy_class(self)
               has_many(
                 :globalize_translations,
-                :class_name =&gt; globalize_proxy.name,
-                :extend =&gt; Extensions,
-                :dependent =&gt; :delete_all
+                :class_name   =&gt; globalize_proxy.name,
+                :extend       =&gt; Extensions,
+                :dependent    =&gt; :delete_all,
+                :foreign_key  =&gt; class_name.foreign_key
               )
 
               after_save :update_globalize_record              </diff>
      <filename>lib/globalize/model/active_record/translated.rb</filename>
    </modified>
    <modified>
      <diff>@@ -12,4 +12,13 @@ class Parent &lt; ActiveRecord::Base
 end
 
 class Child &lt; Parent
+end
+
+class Comment &lt; ActiveRecord::Base
+  validates_presence_of :content
+  belongs_to :post
+end
+ 
+class TranslatedComment &lt; Comment
+  translates :content
 end
\ No newline at end of file</diff>
      <filename>test/data/post.rb</filename>
    </modified>
    <modified>
      <diff>@@ -25,5 +25,15 @@ ActiveRecord::Schema.define do
     t.string     :type
   end
   
-end
+  create_table :comments, :force =&gt; true do |t|
+    t.references :post
+  end
+
+  create_table :translated_comment_translations, :force =&gt; true do |t|
+    t.string     :locale
+    t.references :comment
+    t.string     :subject
+    t.text       :content
+  end
   
+end
\ No newline at end of file</diff>
      <filename>test/data/schema.rb</filename>
    </modified>
    <modified>
      <diff>@@ -426,6 +426,27 @@ class TranslatedTest &lt; ActiveSupport::TestCase
     p.destroy
     assert_equal 0, PostTranslation.count
   end
+  
+  test &quot;translating subclass of untranslated comment model&quot; do
+    translated_comment = TranslatedComment.create(:post =&gt; @post)
+    assert_nothing_raised { translated_comment.globalize_translations }
+  end
+  
+  test &quot;modifiying translated comments works as expected&quot; do
+    I18n.locale = :en
+    translated_comment = TranslatedComment.create(:post =&gt; @post, :content =&gt; 'foo')
+    assert_equal 'foo', translated_comment.content
+    
+    I18n.locale = :de
+    translated_comment.content = 'bar'
+    assert translated_comment.save
+    assert_equal 'bar', translated_comment.content
+    
+    I18n.locale = :en
+    assert_equal 'foo', translated_comment.content
+    
+    assert_equal 2, translated_comment.globalize_translations.size
+  end
 end
 
 # TODO should validate_presence_of take fallbacks into account? maybe we need</diff>
      <filename>test/model/active_record/translated_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>0eef3b82561d3d2bfa7f604b1fa6f9f44c2616b6</id>
    </parent>
  </parents>
  <author>
    <name>hukl</name>
    <email>contact@smyck.org</email>
  </author>
  <url>http://github.com/joshmh/globalize2/commit/315ae9dde1c5550d331ca7ab7ea6bc83e3882f32</url>
  <id>315ae9dde1c5550d331ca7ab7ea6bc83e3882f32</id>
  <committed-date>2009-04-29T11:58:04-07:00</committed-date>
  <authored-date>2009-04-29T11:58:04-07:00</authored-date>
  <message>This patch makes sure globalize2 behaves as expected when a subclass of an untranslated model is translated.

class Comment &lt; ActiveRecord::Base
end

class TranslatedComment &lt; Comment
  translates :content
end</message>
  <tree>2bd86ffebb18771677bfb129f6a9552bb23bb815</tree>
  <committer>
    <name>hukl</name>
    <email>contact@smyck.org</email>
  </committer>
</commit>
