2

rails4、activeadmin、globalize、activeadmin-globalize を使用しています。テスト アプリケーションを作成しましたが、正しく動作しません。

モデルクラス model.rb があります

class Post < ActiveRecord::Base
  active_admin_translates :title, :text do
    validates_presence_of :title
  end
end

そして適切な移行

class CreatePosts < ActiveRecord::Migration
  def up
    create_table :posts do |t|
      t.timestamps
    end
    Post.create_translation_table! title: :string, text: :text
  end

  def down
    drop_table :posts
    Post.drop_translation_table!
  end
end

アクティブな管理ページは次のように構成されています

ActiveAdmin.register Post do
  permit_params :title, :text, translations_attributes: [:title, :text, :locale]

  index do
    translation_status
    default_actions
  end

  form do |f|
    f.translated_inputs 'Translated fields', switch_locale: false do |t|
      t.input :title
      t.input :text
    end
    f.actions
  end
end

ActiveAdmin で新しいレコードを作成すると、すべてが正常に機能し、ローカリゼーションが保存されます。問題は、そのレコードを編集して保存しようとしても、何も変更されないことです。

誰が私が間違っているのか教えてもらえますか? ダウンロードして自分で試すことができる実用的なサンプル ソリューションはありますか?

アップデート:

レコードを更新しようとすると、翻訳テーブルに新しい翻訳レコードのタプルが作成されることがわかりました。ActiveAdmin はまだ最初のものを見ています。

4

1 に答える 1