Ruby on Rails在表单提交时获取客户端IP地址

时间:2013-05-06 21:49:02

标签: ruby-on-rails

首先,我是Ruby on Rails的新手。我有一个用户对象和ex。

的表单
<%= form_for(@user) do |f| %>
   f.submit #call something 
<% end %>

当我提交表单并希望将用户的IP地址添加到存储用户值的数据库中时。不太确定我需要调用什么才能在f.sumbit上执行此操作。也许对它采取完全错误的方式,对想法持开放态度。

2 个答案:

答案 0 :(得分:2)

IP地址可作为remote_ip实例的request字段用于控制器,例如:

class MyController < ApplicationController
  def my_action
    ip = request.remote_ip
    # do stuff
  end
end

答案 1 :(得分:0)

您无法在客户端访问IP,您必须在服务器端执行此操作。要访问IP,只需在控制器中查询,如:

request.remote_ip