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

如何将文章标记为已编辑?

  •  1
  • BDuelz  · 技术社区  · 16 年前

    我想有问题标记为“编辑”,但我不知道什么是最好的方式来做这件事。

    我要加一个 last_edited 列(因为这对我来说才是真正重要的),但我不确定是否应该将编辑时间(以及其他内容)拆分到另一个表中,并记录每次编辑问题的时间。

    编辑: 如果我用时间戳,会用什么时间?有没有办法在更新时插入unix timestmap?

    4 回复  |  直到 16 年前
        1
  •  0
  •   mohdajami    16 年前

    如果您只需要编辑或不编辑一个标记,只需在同一个表中添加一个Timestamp列,填充到 NULL

        2
  •  2
  •   DVK    16 年前

    这取决于是否有人(用户或管理员)关心编辑的历史。

        3
  •  0
  •   Moe    16 年前

    如果您只关心最近的更新何时发生,请添加 timestamp

    如果要跟踪发生的每个编辑,请创建一个单独的表,其中包含 question_id 以及 时间戳 .

        4
  •  0
  •   Marc B    16 年前

    根据处理日期/时间数据的方式,可以存储unix时间戳( fieldname = unix_timestamp(now()) fieldname=now() ).

    如果您要在mysql中基于日期/时间进行数据排序/过滤,那么请使用本机datetime类型,这样您就可以直接利用mysql的所有date&时间处理功能。如果要在应用程序中执行大部分处理,unix时间戳往往比格式化的日期/时间字符串更便于移植。

    至于表结构,跟踪编辑的最简单方法是一对字段(lastedited和lasteditor)。如果你想保留一个完整的编辑和时间列表,那么你需要一个单独的表。如果要跟踪更改,那么版本控制/跟踪信息可以放在同一个表中。