- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
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/
我是一名优秀的程序员,十分优秀!