我要在我的应用程序中记录用户活动。我想追踪特定记录的处理方式。假设我有三个带有 clients 和 events 以及** users *的表,用户可以在这些表上进行基本的CRUD操作。这时候我的想法是创建像这样的表
+----+---------+---------------------+------------+----------+
| id | user_id | description | child_type | child_id |
+----+---------+---------------------+------------+----------+
| 1 | 12 | User deleted record | clients | 731 |
| 2 | 4 | User updated record | events | 980 |
| 3 | 4 | User deleted record | events | 980 |
+----+---------+---------------------+------------+----------+
我只想在用户或Ajax的请求下,在“客户端”或“事件”视图中查看这些信息。
SELECT
*
FROM
user_activity T1
INNER JOIN
user T2 ON T1.user_id = T2.id
WHERE
T1.child_type={{ child_type }} AND T1.child_id={{ id_of_current_chosen_{{child_type}} }}
从“客户端/事件”视图查询看起来很简单,但是当我要检查哪些特定用户更改了以及在哪里更改时,该怎么办?
我想获得类似的信息
已删除客户John Doe于2019-03-03 12:51 更新的活动Music Festiwal于2019-03-03 08:37
SELECT
*
FROM
user_activity T1
INNER JOIN
**??????**
WHERE
T1.user_id={{user_id}}
如何访问“客户端/事件”表中的数据?当 Child_type 列是表的全名时,我可以以某种方式通过单个查询实现吗?