在模型中获取用户的IP地址

时间:2011-10-31 06:01:47

标签: ruby-on-rails ruby-on-rails-3

我有一个ip_address字段用于我想要使用模型自动流行的所有表格。我怎么能在模型中设置它?我猜我必须使用before_save过滤器吗?

1 个答案:

答案 0 :(得分:1)

没有理由使用过滤器。 ip_address列是一个像所有其他列一样的列。根据您的意图,您必须找到匹配的模型实例并更改其ip_address列或创建包含该列的新条目。

当你说你在每张桌子上都有它的不良风格时。 ip_address分配给用户,而不是每个模型。我建议您创建一个名为Login的新模型,其中包含ip_addressuser_id以及created_atupdated_at字段。最后一个是自动生成的。然后,每次用户登录时都可以保存ip_address。在控制器中就像这样:

login=Login.new
login.user=current_user
login.ip_address=request.remote_ip
login.save