我是 Ruby on Rails 的新手,我正在尝试更新一个设备属性 (lastChangedBy),只要单击提交按钮,它就会将其值设置为用户的 IP 地址。我想做类似的事情:
<%= form_for(@device) do |f| %>
.
.
.
<%= if click? ( f.submit "Commit Entries", class: "btn btn-primary" ) == true %>
<%= @device.lastChangedBy = request.remote_ip %>
<% end %>
但我认为这是不可能的。我正在研究使用“button_to”,但在网上搜索后,我对如何使用它感到非常困惑。我尝试做类似的事情:
<%= button_to "Commit Entries", action: "setIp" %>
然后在 DevicesController 和 helper.rb 中(因为我不确定它会在哪里调用该方法)我做了一个简单的方法:
def setIp
Device.find(params[:id])
@device.lastChangedBy = request.remote_ip
end
但我完全迷失了。有人可以帮助我。如果你是具体的,那将是惊人的!