在params中发送“nil”但显示不同的值

时间:2018-04-05 01:07:29

标签: ruby-on-rails ruby

我有一个场景,如果客户端希望特定字段的视图中显示Null的值,则该值为零。但是,如果该值为nil,我实际上并不想将Null的值发送到服务器,我仍然希望将该字段视为nil并且没有发送任何内容。以下是我正在使用的内容:

字段:

<%= form.text_field :fee, value: finfolio_fee_presence(@account.fee), class: "finfolio-fields__input", readonly: true %>

助手:

def finfolio_fee_presence(value)
  value.nil? ? "Null" : value
end

因此,这会向客户显示客户所需的值,但在这种情况下我实际上并不想发送“Null”。我如何将此处理为nil并且如果它是nil则不将此字段发送到服务器?

2 个答案:

答案 0 :(得分:1)

如果@account.fee为零,使用禁用选项怎么样?它会显示你的text_field及其“调整”值,但它不会在参数范围内:

<%= form.text_field :fee, 
      value: finfolio_fee_presence(@account.fee), 
      class: 'finfolio-fields__input',
      disabled: @account.fee.nil? %>

答案 1 :(得分:0)

<%= form.text_field :fee, 
  value: finfolio_fee_presence(@account.fee), 
  class: 'finfolio-fields__input',
  disabled: @account.fee.nil? %>