ruby – Rails根据操作隐藏表单字段
发布时间:2020-12-16 23:33:39 所属栏目:百科 来源:网络整理
导读:我正在创建一个具有多个字段的表单,其中一个字段应该具有默认值,如果正在创建资源,则该字段不可见.但如果正在编辑,则应显示该字段.所以我尝试这样的事情: %= form_for(@task) do |f| % div class="field" id="v_field" %= f.label :v_field,"Always visible
我正在创建一个具有多个字段的表单,其中一个字段应该具有默认值,如果正在创建资源,则该字段不可见.但如果正在编辑,则应显示该字段.所以我尝试这样的事情:
<%= form_for(@task) do |f| %> <div class="field" id="v_field"> <%= f.label :v_field,"Always visible field." %> <%= f.text_field :status %> </div> <% if params[:action] != "new" %> <div class="field" id="default_field"> <%= f.label :default_field,"Default field (should be invisible for new resources only)." %> <%= f.text_field :status %> </div> <% end <% end %> 但它不起作用. format.html { :except => [:default_field] } 但它不起作用. 请告诉我,在这种情况下我应该使用什么比较? 解决方法
如果您遵循正常的Rails约定,您将通过任务控制器中的new或edit方法显示此表单.
对于new,创建一个新的(空)任务,用于编辑从数据库中获取的现有任务. 然后一个简单的测试就是查看任务是否还有id. <% if @task.id %> ... <% end %> 你最好看一下你操纵对象的状态,而不是看用户到达那里的动作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |