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 はまだ最初のものを見ています。