在创建时显示新记录 new :id,然后在编辑时显示其 true :id
Show new records new :id on create and then its true :id on edit
我有一个 simple_form 显示使用此 <%= (Invoice.last.id + 1) %>
创建表单时表单的 :id 是什么但是当我点击编辑并再次呈现表单时我想要一些东西像这样 <%= @invoice.id %>
if 语句是一个好的解决方案吗?
假设新发票 ID 为 Invoice.last.id + 1
并不好。如果您的网站同时有多个用户,那么您无法预测哪一个会先保存他们的发票。因此,无论您提供的发票 ID 至少有时是错误的。
最好不要显示尚未创建的发票的 ID,例如:
<% unless @invoice.new_record? %>
Invoice ID: <%= @invoice.id %>
<% end %>
或显示占位符,例如:
Invoice ID: <%= @invoice.new_record? ? 'New Invoice' : @invoice.id %>
我有一个 simple_form 显示使用此 <%= (Invoice.last.id + 1) %>
创建表单时表单的 :id 是什么但是当我点击编辑并再次呈现表单时我想要一些东西像这样 <%= @invoice.id %>
if 语句是一个好的解决方案吗?
假设新发票 ID 为 Invoice.last.id + 1
并不好。如果您的网站同时有多个用户,那么您无法预测哪一个会先保存他们的发票。因此,无论您提供的发票 ID 至少有时是错误的。
最好不要显示尚未创建的发票的 ID,例如:
<% unless @invoice.new_record? %>
Invoice ID: <%= @invoice.id %>
<% end %>
或显示占位符,例如:
Invoice ID: <%= @invoice.new_record? ? 'New Invoice' : @invoice.id %>