0

ソファ/改訂可能なパッケージ(または同じアクションを実行する他のパッケージ)を使用してlaravel 5.3の変更を追跡したい

表は次のとおりです。

item
    id - primary key
    title - text

item_fields
    id - primary key
    title - name of the field

item_field_values
    item_id - foreign key to item(id)
    field_id - foreign key to item_fields(id)
    value - text

item
   1 - "John"

item_fields
   1 - "email"
   2 - "last login time"
   3 - "balance"

item_values
   1 - 1 - "john@example.com" // email
   1 - 2 - "01.11.2016 11:30:03" // last login time
   1 - 3 - "$38" // balance

たとえば、ユーザーの残高はユーザーのログオンと同時に変更されるため、リビジョン テーブルには次のような内容が含まれます。

 "For user 1 last login time changed from 01.11.2016 11:30.03 to 02.11.2016 10:20:00"
 "For user 1 balance changed from $38 to $36.50"

これらは 2 つの別個のフィールドであり、互いに関連していません。それらを として表示したいone changeが、異なる変更はしたくない場合、これらのフィールドは互いにリンクしていないため、これを行うことはできません。

別の例では、新しい行がリビジョン テーブルに追加されます

 "For user 1 balance changed from $36.5 to $33"

1枚差です。

異なるフィールドから関連する変更を 1 つの一括リビジョンとして選択するにはどうすればよいですか? 多くの item_fields (数百) があります。テーブルcreated内の行の時間に頼ることはできません。revisions

laravelのすべてのリビジョン関連パッケージの問題は、1つのモデルのすべてのフィールドへの変更を追跡することですが、私の場合、1つのモデル(item_field_values)がありますが、1つのリビジョン/バージョンには多くの変更された行が含まれる可能性があります.

4

0 に答える 0