如果动作被编辑,不要显示表单的字段
我有轨道形式,呈现部分字段列表来创建新用户。这些字段也用于呈现编辑表单。我想知道是否有可能不在编辑表单上显示特定字段(即部门),因为我不想让用户选择更改部门?如果动作被编辑,不要显示表单的字段
如果PARAMS [:行动]为编辑则不会显示该字段可能是通过使用显示器没有
它不起作用,但我没有得到的部分new_record?我应该在我的userController for new_record有一个方法?或者它是一些内置的导轨方法?内置的 – 2014-11-08 12:18:22
,'@ user'是一个AR对象 – Nithin 2014-11-08 12:29:49
只要把你的形式:
<%= f.text_field :department unless @user.new_record? %>
您可以使用坚持?方法确保它不会插入新记录,甚至使用new_record?如果记录没有保存在数据库“新记录”中,它将返回true。 前::
<%= f.text_field :department if @user.persisted? %>
or
<%= f.text_field :department unless @user.new_record? %>
另一种方式是检查有关的行动本身,这也给了你控制的控制器上,如果您呈现来自不同的看法偏,你想将其限制在特定的控制器,这些被存储在::
params[:controller] -->> contains the name of the controller ex. UserController that you just hit on
params[:action] -->> contains the action name ex. new or edit
我试过,但该领域的后来不同时行动,新的编辑:( – 2014-11-08 12:18:57
但在新的情况下..行动将是新的,然后不能编辑字段应该显示出。如果其他条件显示字段使用其他情况下隐藏它 – 2014-11-08 18:10:21