Member "transactional" data storage with umbraco cloud
I have created the concept of a "course" where a member can watch a video, answer some multiple choice questions on that video, and get "marked" by the system (which checks against the set of "correct answers").
So to create the course and questions is "structural" and pretty easy. What I'm not sure about is the best way to store "transactional" data such as the member's answers, the mark, whether the course has been completed etc.
In the old days (I last worked on v4 of Umbraco), I'd just have created a separate set of non-umbraco based database tables that held that data along with fields that held the nodeIds for memberid, courseid, questionid, answerid etc.
Is that still the way to do it, or is there a better more umbraco way of storing this type of data? Or should I actually be creating some umbraco structures for this data and using the umbraco api to read and write it?
It is, as far as I'm aware, still recommended practice to use custom tables for this sort of data and not store it in the typical Umbraco tables. Even on Umbraco Cloud this is possible. I would start by looking up Migrations as a means of updating the database to add your custom table(s) as this is a trackable way to add the tables and, should it be required, remove or update them in the future.
I have just done a lot more reading up and have come to the same conclusion. I can see that I can connect to the Azure Umbraco db via SSMS and I can also open my local SQLCE Umbraco db the same way.
I will look into migrations to allow thhem to be trackable.
Member "transactional" data storage with umbraco cloud
I have created the concept of a "course" where a member can watch a video, answer some multiple choice questions on that video, and get "marked" by the system (which checks against the set of "correct answers").
So to create the course and questions is "structural" and pretty easy. What I'm not sure about is the best way to store "transactional" data such as the member's answers, the mark, whether the course has been completed etc.
In the old days (I last worked on v4 of Umbraco), I'd just have created a separate set of non-umbraco based database tables that held that data along with fields that held the nodeIds for memberid, courseid, questionid, answerid etc.
Is that still the way to do it, or is there a better more umbraco way of storing this type of data? Or should I actually be creating some umbraco structures for this data and using the umbraco api to read and write it?
Thanks
Rich
Hi Richard,
It is, as far as I'm aware, still recommended practice to use custom tables for this sort of data and not store it in the typical Umbraco tables. Even on Umbraco Cloud this is possible. I would start by looking up Migrations as a means of updating the database to add your custom table(s) as this is a trackable way to add the tables and, should it be required, remove or update them in the future.
Thanks,
Nik
I have just done a lot more reading up and have come to the same conclusion. I can see that I can connect to the Azure Umbraco db via SSMS and I can also open my local SQLCE Umbraco db the same way.
I will look into migrations to allow thhem to be trackable.
Thanks Nik for your help.
is working on a reply...