代码之家  ›  专栏  ›  技术社区  ›  Matt Rogish

现有应用程序中许多型号的IP地址记录

  •  3
  • Matt Rogish  · 技术社区  · 17 年前

    我有一个现有的应用程序,有很多很多型号。我想记录创建它们的用户的IP地址,主要目的是帮助清除垃圾邮件发送者或其他滥用用户(如果我不知道他们使用的IP地址,我无法阻止)。随着时间的推移,我需要跟踪这些信息,因为用户可能会从家里、办公室、电话等处访问,我希望看到使用模式。它也可能是一种有趣的地图用户访问的地方或东西,但任何副作用纯粹是思想的东西在这个时候。

    我们使用基于cookie的方法存储用户会话。

    1. 向每个模型添加IP地址属性,并将其传入
    2. 使用观察者或在保存回调后调用的某种记录器模型

    3 回复  |  直到 17 年前
        1
  •  2
  •   Scott Miller    17 年前

    我会为此使用多态关联,然后您可以将其应用于所有需要跟踪的模型。这将把在每个模型中添加IP地址列的麻烦降到最低,并将显著减少代码库中的重复量。那么,使用观察者路线可能是连接模型的最简单方法。

        2
  •  2
  •   Matt Rogish    17 年前

    使用观察者或在保存回调后调用的某种记录器模型

    赞成的意见:

    • 可以通过观察者完成,因此模型甚至不需要知道

    欺骗:

        3
  •  1
  •   Matt Rogish    17 年前

    赞成的意见:

    • 概念上很简单。有一个属性,我可以很容易地看到发布123是由用户222 w/IP 123.123.123上传的

    • 如果我移动到IPv6,这将失败(如果模型需要IPv4地址)
    推荐文章