我正在我的环回 4 应用程序中设置多对多关系。目前我正在使用这个答案作为指南,但是在创建存储库和控制器之后,我不知道如何继续。
目前我有三个关系表:Course
、Language
和LanguageCourse
。这意味着一个Course
可以有多种语言,一个Language
可以属于许多课程。
我的language-course.model.ts
样子是这样的:
import {Course} from './course.model';
import {Language} from './language.model';
@model({settings: {}})
export class LanguageCourse extends Entity {
@property({
type: 'number',
id: true,
})
id?: number;
@belongsTo(() => Course)
courseId?: number;
@belongsTo(() => Language)
languageId?: number;
constructor(data?: Partial<LanguageCourse>) {
super(data);
}
}
export interface LanguageCourseRelations {
// describe navigational properties here
}
export type LanguageCourseWithRelations = LanguageCourse &
LanguageCourseRelations;
我的 course.model.ts 看起来像这样(我已经在这个模型中建立了一对多的关系):
import {User, UserWithRelations} from './user.model';
@model({settings: {}})
export class Course extends Entity {
@property({
type: 'number',
id: true,
})
id?: number;
@property({
type: 'string',
})
name?: string;
@property({
type: 'string',
})
description?: string;
@belongsTo(() => User)
userId?: number;
@property({
type: 'string',
default: 'active',
})
state?: string;
@property({
type: 'string',
default: 'rookie',
})
level?: string;
@property({
type: 'string',
})
course_photo?: string;
constructor(data?: Partial<Course>) {
super(data);
}
}
export interface CourseRelations {
user?: UserWithRelations;
}
export type CourseWithRelations = Course & CourseRelations;
我的 language.model.ts 看起来像这样:
@model({settings: {}})
export class Language extends Entity {
@property({
type: 'number',
id: true,
})
id?: number;
@property({
type: 'string',
})
name?: string;
constructor(data?: Partial<Language>) {
super(data);
}
}
export interface LanguageRelations {
// describe navigational properties here
}
export type LanguageWithRelations = Language & LanguageRelations;
我想向GET
例如/courses/{id}
端点(/courses
以及)发出请求,并在响应中包含课程所具有的所有语言,但我不知道如何使其工作。我也希望它在/languages
端点中工作。
谢谢你的时间!