代码之家  ›  专栏  ›  技术社区  ›  eugeneK

最正确的方法

  •  1
  • eugeneK  · 技术社区  · 15 年前

    我有一个会员网站,不管是什么语言或框架,因为这是一个普遍的问题。会员可以从内部和外部取消订阅。当成员在内部时,我将其userid存储在会话中,并调用一个名为cancel subscription()的函数,该函数从会话中获取userid并调用db以取消订阅。外部使用来自时事通讯的电子邮件,用户可以点击关闭订阅。

    问题是什么是正确的,基于你的坏的或好的经验方法来创建这两个功能。

    方法:

    1. 使用userid(integer)和useremail(string)作为单独的函数创建closesubscription。
    2. 当closesubscription得到一个字符串作为参数时,为它创建重写函数。
    3. 创建函数,在该函数中,adduseridfromuseremail get的userid保存在会话中,然后调用closesubscription。

    或其他…

    谢谢

    1 回复  |  直到 15 年前
        1
  •  1
  •   smirkingman    15 年前

    这些解决方案都没有,因为(对于3个方案中的每一个):

    1. 您将在中复制删除代码 两种删除方法
    2. 很困惑,有一天, (意外)隐式转换 会把它弄坏的。
    3. closesubscription不应该依赖 会话ID的存在。如果以后希望 是否脱机删除订阅?

    因此:

    4:使用userid(integer)创建closesubscription。

    创建closesubscription email(email as string),它查找用户ID,然后调用closesubscription。