我的应用程序中使用rails 4并使用活动的admin gem。 我想在渲染或重定向到新页面或编辑页面时更改页面默认标题,但以下代码无效。
我的代码是
form :title => { :new => "New action", :edit => "Edit action"} do |f|
f.input reason, :label => "Reason", :input_html => {rows: 5}
end
但是当我使用下面的代码时它正在工作
def new
@page_title = "New Action"
end
def edit
@page_title = "Edit Action"
end
但是在新页面上验证渲染后,它没有更新标题,因为它只渲染不重定向,
def create
@object = Model.new(params)
respond_to do |format|
if @object.save
flash[:notice] = 'Saved Successfully'
format.html { redirect_to collection_url }
else
format.html { render "new" }
end
end
end
如何解决这个问题,任何人都可以帮帮我
答案 0 :(得分:1)
在create and update方法中添加@page_title可以正常工作。
验证失败后,该页面标题在将其添加到创建和更新方法时也有效。
def create
@page_title = "new title"
@object = Model.new(params)
respond_to do |format|
if @object.save
flash[:notice] = 'Saved Successfully'
format.html { redirect_to collection_url }
else
format.html { render "new" }
end
end
end
答案 1 :(得分:0)
尝试使用此功能,设置
@page_title =" action_type"
验证失败,即其他部分。 渲染页面将选择新的@page_title值