如何在JHipster 3.x中创建一个包含相关实体列表的实体视图?

时间:2016-09-06 07:03:26

标签: javascript angularjs jhipster

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

一个例子:我有课程,每门课程可能有许多课程,学生和客户连接。现在,在课程字段下方的课程详细信息视图中,我希望每个相关课程,学生和客户都有三个列表(例如,与SalesForce的相似)。

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

这似乎是一个常见的UX主题。是否有适用于此用例的示例应用程序?

感谢您的任何指示!

1 个答案:

答案 0 :(得分:3)

简而言之:

1)您使用CourseResource的{​​{1}}分发的热切获取实体,其中没有 Course超过您的课程集。最后,通过调用一个课程,JSON应该包含相关的实体。

详细(编辑)

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

@JsonIgnore

然后首先转到entity Course { courseName String } entity Lesson { lessonName String } relationship OneToMany { Course{lesson} to Lesson } 类并将Set更改为以下内容:

Course

这是最快速的方式,但不是最常用的方法,因为每次查询课程时,您都会加入到Lessions中。为了避免这种情况,您必须在您的存储库中构建一些@Query,然后手动加入...但我现在将保持简单。

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

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

一般来说,我觉得拥有一些发电机似乎是一个好主意,但它可能比你想象的更难。比如,如何表示数据。如果您与该实体有多个关系,您会使用制表符吗?如果选项卡,但只有一个关系,那么选项卡是否仍然足够?是否更多关于这一点,仍然足以在JHipsters中央发电机中做出决定,或者这应该对开发者开放?

我认为值得讨论,但是可以做一些JHipster模块来实现这个目标

最好的问候

P.S。:如果我的答案很简短,请问我...它已经很晚了,我懒得贴出一个完整的答案:)