Я проектирование нового веб-сайта. Прежде чем я начну код, я многому учусь о базе api и nosql (поскольку я привык к sql, но я хочу попробовать с mongoDB).дизайн API: Нужна помощь для URL-адресов
В MongoDB, я буду иметь 'пользователя' документ так:
{
firstname: 'xxxxxxx',
lastname: 'xxxxxxx',
projects: [
{
name: 'project xxxxxxx',
participants: [], // array of friends into this project
operations: [
{ title: 'Title OP xxxxxxx', contributors: [] },
{ title: 'Title OP xxxxxxx', contributors: [] },
{ title: 'Title OP xxxxxxx', contributors: [] }
]
}
]
}
мне было интересно, две вещи:
- Если
projects.participants
иprojects.operations.contributors
быть ссылки другим пользователям? - Для API, я должен сделать что-то вроде: (? Должен мой API всегда начинаются с
users
)
GET /users/:id_user
GET /users/:id_user/projects/:id_project
GET /users/:id_user/projects/:id_project/operations/:id_operation
Если вы когда-либо лучшее решение я буду рад узнать.
Благодаря
EDIT 1: Я буду работать на NodeJS с экспресс и я хотел бы иметь REST API.
Что вам больше всего подходит? А также что здесь имеет наибольший смысл? Все находится в одном объекте «Пользователь» со встроенными данными? Поэтому, если в целом все ссылается на «пользователь», тогда имеет смысл включить этот идентификатор во все запросы. Если, однако, другие встроенные элементы имеют свои собственные «уникальные» идентификаторы, тогда было бы вполне разумно иметь их собственные конечные точки. Но будьте осторожны. Вложенные массивы внутри массивов не являются отличным шаблоном дизайна. Read [positional $ update] (http://docs.mongodb.org/manual/reference/operator/update/positional/) –