我建立了一個電子商務網站,管理員可以通過 mysql 編輯產品。現在我想顯示每個產品的編輯歷史。編輯歷史記錄應包含“更新日期”和“更新內容”。
這是我的產品表:
一種解決方案:我想在產品表中創建新列“編輯歷史記錄”和“編輯日期”。每當管理員編輯一列時,它就會被添加到這里。如果有人知道如何使用此方法或其他方法來解決此問題,請發表評論。謝謝。
uj5u.com熱心網友回復:
我將創建另一個記錄歷史記錄的表,product_history其中包含列(id、product_id、from (json)、to (json)、created_at、updated_at)。
在 from 和 to 列中,只需對舊行和新行的完整內容進行編碼,您可以/應該在觀察者中執行此操作。
uj5u.com熱心網友回復:
您可以在 SQL 中創建一個觸發器,如果??有修改,您可以在表中自動添加資料。如果您愿意,我讓您看一下這門課程:Sql trigger或Sql Trigger。然后為更新日期(同一天)添加日期 a Now,并為觸發器中的修改添加一些 SQL 以查看之前和之后的差異。此外,如上所述,創建審核表將允許您保存更改。您的觸發器將使添加行變得更容易。祝你好運
uj5u.com熱心網友回復:
解決方案之一是在產品表中使用它:
$table->text('history');
當您更新產品時,獲取 id 并在歷史記錄中存盤當前日期和這樣的資料
{"date":"day-month-year","data":"some data updated bla bla.."}
當您更新它時,將另一個物件放在同一行 product_id
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/420988.html
標籤:
上一篇:從字串csv排列陣列
