In Developers table, what is the use of appId ?
one developer can create multiple projects, you can't store multiple values in the appId (int) in a developer table.
The 'developers' table is join table. Is only made to collect how many developers had work in that app
1 app can have N developers. I use the 'appId' to identify the developers of the app.
Ex:
'developers':{
developer{'id' : 1, 'appId': 3, 'developerId': 2},
developer{'id' : 2, 'appId': 3, 'developerId': 10},
developer{'id' : 3, 'appId': 3, 'developerId': 5},
developer{'id' : 4, 'appId': 5, 'developerId': 5}
}
The problem that i was thinking is if a developer isn't in the system it can't be listed so it could be:
developers
id INT not null
appId INT not null
developerId null (if the developer isn't in the system pick-up a devName)
developerNick
Shouldn't a developerID be into the apps table instead?
But an apps could have multiple developers, maybe this will be better:
apps:
id
name
version
...
publisher (is that needed?)
developer1Id
developer2Id
developer3Id
developer4Id
developer5Id
...
Yes, it should be a 'developerId' into app table to identify the user who can audit that app. At first I have created that colum, but I don't know why i had deleted.
I made a mistake my bad.
the 'publisher' was in the examples json files so i have added. It could be the name of the team(i guess).
Have multiples columns to make reference to id's I think is unproductive, because that the 'developers' table is made.
I don't know if all the developers listed in the 'developers' table can have the right to audit the app details.
I will think on it.
I don't know what will be visible on the website.
If you create a "role", I only suppose user's profiles will be visible? or is it an access level to edit the database?
You will allow developers to upload/update their homebrew?
Yes the website will have a frontend to users in the future.
I had created the roles thinking in the web frontend letting the users publish their own apps. But i don't know if it will be like that or if a group of mods will be updating/publishing the apps.
I will wrote an document with the specifications of the tables.