【发布时间】:2018-06-06 18:33:49
【问题描述】:
我正在考虑如何在 JHipster 中创建这样的 Proposal 对象:这样一个用户可以创建一个 Proposal 并且其他用户可以为它投票。
entity Proposal {
proposalText String minlength(2) maxlength(100) required
proposalVotes Integer
}
entity Vote {
numberOfPoints Integer
}
relationship ManyToOne {
Vote{proposal(id) required} to Proposal{vote}
Proposal{user(id) required} to User{proposal}
Vote{user(id) required} to User{vote}
}
在 Spring 中,我将创建 @Transient proposalVotes Integer,控制器将查找 Proposal 拥有的所有投票并将它们加在一起以获得要发送到前端的结果。该属性不会存储在数据库中。
如果我使用 JHipster 并添加了一个 proposalVotes 属性,结果将保存在数据库中,并且可以在对话框中更改(...我不喜欢结果),所以我的问题是: 当您需要一个在每次调用他的对象时计算的属性时,JHipster 的最佳实践是什么?
如果比较熟悉的话,想想一个带有帖子的博客中的 cmets 的数量。
你在哪里计算结果:我会在 ProposalResource 中计算,但我不确定,我在示例中没有看到任何这样的用例,但它看起来很常见。
非常感谢
PD:如果 Github 中有任何示例,那就太好了!
【问题讨论】:
-
有什么阻止您将此注释添加到生成的代码中吗?或者,您可以使用 DTO 和服务层。
-
再次感谢 Gaël。是的,刚接触编程! ;-) 这就是为什么我问你,作为专家,你会怎么做?这是最佳做法吗?我想我将不得不修改一大堆东西。你知道我可以看看任何类似的例子吗?
标签: jhipster