Установите значение для атрибутов own_to в рельсах.
Я пытаюсь установить заголовок страницы в моем действии создания.
Мне нужно page.translation.title = params[:page][:title]
def create
@page = Page.new(params[:page])
@page.translation.title = params[:page][:title]
if @page.save
redirect_to admin_pages_path
else
render :new
end
end
Также попробовал @translation = @page.translation.build(title: params[:page][:title])
из консоли, когда я бегу:
p = Page.last
p.translation.title
=> nil -----> right now after its created, title is nil.
p.translation.title = "foo"
=> "foo"
Это то, что я в своем действии. любая помощь будет принята с благодарностью. Спасибо.
Обновить:
Я использую это на устаревшем приложении, которое работает на refinerycms 2.1.0.dev
Соответствующий код:
Решение
def create
@page = Refinery::Page.new(params[:page])
if @page.save!
@page.translations.create(slug: @page.slug,
title: params[:page][:title],
locale: params[:switch_locale])
flash.notice = t(
'refinery.crudify.created',
what: "'#{@page.title}'"
)
redirect_to admin_pages_path
else
render :new
end
end