Combine all the *_tag tables into one table
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Fix Released
|
Wishlist
|
Unassigned |
Bug Description
Currently we have
- artefact_tag
- collection_tag
- view_tag
- usr_tag
tables and if we want to have new tagging, say for groups we would need to add another table
It might be easier to combine all these tables so that we can do easier queries, like what are all the tags for an owner. Rather than having to do a bunch of table joins and checking what things are owned by what view/artefact etc we can just query the one table.
I'm thinking of having one table with the fields
id, tag, resourcetype, resourceid, ownertype, ownerid, editedby, ctime, mtime
where resourcetype is either 'view', 'artefact' etc
and resourceid is the id of that type
Where ownertype can be 'user', 'group', institution'
and ownerid can be the id number or shortname
And editedby can be the ID of the current user interacting with the tag - useful for group/institution tags
ctime = created time
mtime = modified time
This is to support a number of new tag features for Mahara 18.10.
Sponsored by PHBern.
Changed in mahara: | |
status: | New → Confirmed |
Changed in mahara: | |
status: | Confirmed → Fix Committed |
tags: | added: nominatedfeature |
description: | updated |
Changed in mahara: | |
status: | Fix Committed → Fix Released |
Reviewed: https:/ /reviews. mahara. org/8908 /git.mahara. org/mahara/ mahara/ commit/ b156f2e20b2fcf3 12e975886fcd34d 615d5c78ab
Committed: https:/
Submitter: Robert Lyon (<email address hidden>)
Branch: master
commit b156f2e20b2fcf3 12e975886fcd34d 615d5c78ab
Author: Robert Lyon <email address hidden>
Date: Tue May 29 16:16:43 2018 +1200
Bug 1774103: Looking to combine all the *_tag tables
So that we only have one 'tag' table that holds all the tag information
behatnotneeded
Change-Id: Ieb83e61da45edd dfa8703816c11f3 658c5394c47
Signed-off-by: Robert Lyon <email address hidden>