Я пытаюсь создать модель данных, которая выглядит следующим образом:
https://prnt.sc/mflh3t
По сути, пользователь может принадлежать ко многим проектам, и проект может иметь много пользователей.Я решил создать таблицу соединений под названием UserProjects
.
Однако я не совсем уверен, как выглядит структура.Моя пользовательская модель в Objection выглядит следующим образом:
class User extends Model {
static get tableName () {
return 'user'
}
static get relationMappings () {
return {
timesheet: {
relation: Model.HasManyRelation,
modelClass: Timesheet,
join: {
from: 'user.id',
to: 'timesheet.user_id'
}
}
}
}
}
Должен ли я создать две новые схемы на Project
и User
по линиям
class Project extends Model {
static get tableName() {
return 'project'
}
static get relationMappings() {
return {
userprojects: {
relation: Model.HasManyRelation,
modelClass: UserProjects,
join: {
from: 'project.id',
to: 'userprojects.project_id'
}
}
}
}
}
class User extends Model {
static get tableName () {
return 'user'
}
static get relationMappings () {
return {
timesheet: {
relation: Model.HasManyRelation,
modelClass: Timesheet,
join: {
from: 'user.id',
to: 'timesheet.user_id'
}
},
userprojects: {
relation: Model.HasManyRelation,
modelClass: UserProjects,
join: {
from: 'user_id',
to: 'userprojects.user_id'
}
}
}
}
}
В этомсценарий: как бы я добавил пользователей в проект?Через UserProjects
таблицу?