i’m not sure what is the best way to go about structuring databases in my app.
Background: The app is a marketplace for booking an onsite service. There are two user types, performer and hirer.
The performer will need to set up a service before they can get hired. The service could have multiple skills/inclusions as a part of it’s inclusions. Right now I have the skills as a List of Text in its own database. When searching for services, the hirer should be able to filter by skills (amongst other attributes) When a performer is going through the process of setting up a new service, should the service database for skills be a yes/no option, or its own mini text list?
If this is the best way to go, which I suspect it is, how do you set this up?
There is a third option; make skills it’s own datatype. You can then manage the skills list easier and let users select skills from search or a drop-down or however you like to add to the service.
A yes no option will be unmanageable when there are a lot of skills. A list of texts is also not easy to maintain.
How will users filter on skills and how many skills will you have?
I never knew about making something its own data type. Is there a link you could shoot over? I tried searching, but got a bunch of links that arent related.
Right now there will be about 5 skills, and this will likely grow over time. I dont know how many there would be in the end.
It’s pretty simple and you alr after have a database with a list of texts.
So instead of this list of texts you make it
Name - text field
Some other skill related field - text field (you can add as many fields as you need obviously. Maybe in the future you can look at a field like ‘rank’ where you can keep track of the most popular skills.)
This is your skill database.
Then in the service database you add a field of Skills which is a list of Skills. So you select the skill data type as your field type. Make sure to set it to list if you need more skills per service.
As for adding skills to a service. Add a drop-down or search and set the source to ‘do search for’ and select the skills database.
When savings you set the skills field on the service thing to: set list xx’s value
There are a lot of ways to do this but this is the basic principle that will allow you to easily scale of necessary.