gpt4 book ai didi

javascript - 如何在 JHipster 3.x 中创建包含相关实体列表的实体 View ?

转载 作者:行者123 更新时间:2023-11-29 10:34:18 24 4
gpt4 key购买 nike

JHipster 的新手,请多多包涵 :)。我想在实体详细信息 View 中显示相关实体的列表。我怎样才能做到这一点?由于这在该应用程序中很常见,因此最好有一种通用的方法来执行此操作,而不是修改每个实体(例如,通过修改生成器),但如果没有其他方法,也可以按实体编辑。

一个例子:我有类(class),每个类(class)可能有很多类(class)、学生和连接的客户。现在,在类(class)字段下方的类(class)详细信息 View 中,我希望为每个相关类(class)、学生和客户提供三个列表(例如,类似于 SalesForce 所做的)。

问题有两个方面:如何获得正确的数据(序列化),以及如何更改 View ?如果我为每个实体手动执行后者(更改 View )似乎很简单,但生成它会很好。

这似乎是一个常见的用户体验主题。是否有涵盖此用例的示例应用程序?

谢谢指点!

最佳答案

简而言之:

1) 你让你的 CourseResource 交付 Course 的渴望获取的实体,这些实体没有 @JsonIgnore你的类(class)集。最后,通过调用一个类(class),JSON 应该包含相关的实体。

详细(编辑):

考虑一下,您使用这样的 JDL 生成了您的应用:

entity Course {
courseName String
}

entity Lesson {
lessonName String
}

relationship OneToMany {
Course{lesson} to Lesson
}

然后首先转到Course 类并将Set 更改为以下内容:

@OneToMany(mappedBy = "course", fetch = FetchType.EAGER)
//@JsonIgnore - remove this
private Set<Lesson> lessons = new HashSet<>();

这是最快的方法,但不是最有效的方法,因为每次查询类(class)时,您也会加入类(class)。为避免这种情况,您必须将一些 @Query 构建到您的存储库中,您可以在其中手动加入它...但我现在将保持简单。

删除@JsonIgnore 将导致类(class)隐含地成为类(class)表示的一部分,因此您将获得在 UI 中可视化的所有选项

2) 找到某种方式以您想要的方式显示它

总的来说,我觉得拥有一些生成器似乎是个好主意,但它可能比你想象的要难。比如,如何表示数据。如果您与该实体有多种关系,您会使用制表符吗?如果选项卡,但只有一个关系,选项卡是否足够?在 JHipsters 中央生成器中是否还有更多关于此的内容仍然足以决定这一点,还是应该对开发人员开放?

我认为,这值得讨论,但是仍然可以做一些 JHipster 模块来完成这个

最好的问候

附注:如果我的回答太短,请问我...现在已经晚了,我懒得粘贴完整的答案:)

关于javascript - 如何在 JHipster 3.x 中创建包含相关实体列表的实体 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39342565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com