【问题标题】:how do i save transaction log to database如何将事务日志保存到数据库
【发布时间】:2022-01-13 21:42:14
【问题描述】:

大家好, 我需要你对这个问题的意见。虽然我在我的项目中使用 Django,但我确信这个问题与 django 无关。所以,我正在研究这些服务预订系统。在我的数据库中,我列出了 3 个表:

  1. 带有字段的用户表 • ID • 用户名 • 全名
  2. Services_Table 与字段 • ID • 姓名 • 价格
  3. Transaction_Table 带字段 • ID • 用户身份 • Services_id(多对多关系)

当此服务被预订时,我使用 user_id 和 services_id 作为用户表和服务表的外键将其发送到事务表,这意味着它是保存的 id 值。 当客户想要查看他或她的交易历史时,我通过运行查询来提供:

price = transaction.service.price

service_name = transaction.service.name

total_cost = 选择的所有服务的总和

不向用户显示价格和服务名称的 id 值。 现在这是我的问题,将来,如果管理员决定更改服务的名称和价格并且客户返回查看他的旧交易日志,新值将被填充因为我通过 ids 引用它们,这不是我想要,我希望客户看到旧值作为收据,即使我更新了服务表。 你建议我在这种情况下怎么做?

【问题讨论】:

    标签: django laravel django-models eloquent django-views


    【解决方案1】:

    您应该记录进行的每笔交易,并记录在进行 txn 时总计的价格和金额。交易模型应该有字段来记录交易的每一个细节。

    这意味着: 您将有一个 txn_service 表,其中一个事务中的所有服务都被保存并链接到该事务表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-04
      • 1970-01-01
      • 2018-07-12
      • 1970-01-01
      • 2019-07-13
      • 1970-01-01
      • 2023-01-29
      相关资源
      最近更新 更多