gpt4 book ai didi

ruby - Rails 根据 Action 隐藏表单字段

转载 作者:数据小太阳 更新时间:2023-10-29 06:59:10 25 4
gpt4 key购买 nike

我正在制作一个包含多个字段的表单,其中一个字段应具有默认值,如果正在创建资源,则默认值不可见。但如果正在编辑,则应显示该字段。所以我尝试这样的事情:

<%= 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 %>

但它不起作用。我也试过像这样更改 Controller 设置:

format.html { :except => [:default_field] }

但它不起作用。

请告诉我,我应该在条件中使用什么比较?谢谢。

最佳答案

如果您遵循正常的 Rails 约定,您将通过任务 Controller 中的 newedit 方法显示此表单。

对于新建,创建一个新的(空)任务,对于编辑,从数据库中获取现有任务。

一个简单的测试就是查看任务是否有一个 id

<% if @task.id %>
...
<% end %>

您最好查看您正在操作的对象的状态,而不是查看用户为到达那里所采取的操作。

关于ruby - Rails 根据 Action 隐藏表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13751064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com