我已经使用jHipster创建了我的应用程序。我有两个具有oneToMany关系的实体(课程和主题),在“课程”视图中,我想显示主题。 我尝试了以下失败的尝试:
<ng-container *ngFor="let subject of course.subjects">
我发现的唯一方法是恢复所有主题并比较subject.course.id == course.id,但这不是很实用,必须有另一种方法
<ng-container *ngFor="let subject of subjects">
<tr *ngIf="subject.course.id == course.id" >
编辑
添加模型
course.model.ts
export class Course implements BaseEntity {
constructor(
public id?: number,
public name?: string,
public subjects?: BaseEntity[],
) {
}
}
subject.model.ts
export class Subject implements BaseEntity {
constructor(
public id?: number,
public name?: string,
public course?: BaseEntity,
) {
}
}
答案 0 :(得分:0)
好的,我解决了问题。 jHipster包含@JsonIgnore
批注,因此当Json发送course
的数据时,不包含subjects
。
我删除该注释并添加以下内容:
Course.java:
@OneToMany(mappedBy = "course", cascade = CascadeType.ALL, fetch=FetchType.EAGER)
@JsonIgnoreProperties("course")
private Set<Subject> subjects = new HashSet<>();
Subject.java:
@ManyToOne
@JsonIgnoreProperties("subjects")
private Course course;