2016-06-07 6 views
0

У меня есть таблица под названием «документы», которая имеет вложение (с помощью paperclip gem), и я хочу добавить перевод для этого вложения (путем глобализации), который будет использоваться в Activeadmin. Итак, как только я открою страницу документа в активном админе, я бы хотел добавить два или более переводов документа, но для той же модели (тот же идентификатор модели, но только изменения локалей).Как добавить перевод для документа

Схема создания таблицы таблицы БД модели Документ:

create_table "documents", force: :cascade do |t| 
    t.datetime "created_at",  null: false 
    t.datetime "updated_at",  null: false 
    t.string "doc_file_name" 
    t.string "doc_content_type" 
    t.integer "doc_file_size" 
    t.datetime "doc_updated_at" 
    t.integer "model_id" 
    end 

и база данных Postgres.

+0

Вы хотите перевести таблицу, документ или когда вы показываете эту таблицу на виду? –

+0

Я просто хочу перевести документ, чтобы получить его по model_id & locale –

+0

О, я вижу. Затем нужно проверить интернационализацию. –

ответ

0

Наконец, у меня решить, удалив вложения «документ» из таблицы документов затем Создание таблицы перевода документов с использованием глобализовать камень Document.create_translation_table! и добавить:

has_many :docs 
class Translation 
    belongs_to :document 
    has_attached_file :doc, MODEL_DOCUMENTS_STORAGE_OPTIONS 
    validates_attachment_content_type :doc, content_type: ['application/pdf'] 
    end 

к модели документа, а затем, наконец, доступ (создание/обновление) активной формой администратора:

form :html => { :enctype => 'multipart/form-data' } do |f| 
    f.inputs 'Details' do 
     f.translated_inputs 'ignored title', switch_locale: false do |t| 
     t.input :doc, :as => :file 
     end 
    end 
    actions 
    end 
Смежные вопросы