当前位置: 首页 > 知识库问答 >
问题:

最佳实践:MongoDB Panache实体在Quarkus中的一对多关系处理?

谷梁嘉悦
2023-03-14

不幸的是,Quarkus关于用Panache使用MongoDB的指南没有提到什么被认为是处理实体的一对多关系的最佳实践。注意:我想为依赖的子文档建模,但作为一个独立的实体。MongoDB站点演示了这种模式:用文档引用建模一对多关系,这样您就必须在存储库中查找链接到父ID的所有实体。

Quarkus(Panache)目前是否提供了任何使查找更方便的方法?

PS:似乎从2020年5月开始有一个开放的增强请求,自动获取被引用的实体。

共有1个答案

仲孙鸿畴
2023-03-14

MongoDB是一个非关系数据库,这就是它没有一对多关系支持的原因。

我想对依赖的子文档建模,

我没有遵循,子文档是支持的,你可以只创建一个单独的POJO并将它作为你实体的属性。

不支持的是自动将引用的实体从一个集合加载到另一个集合,就像您指出的有一个it支持的打开的增强请求,您可以对它给出反馈(或者通过+1投票支持它)。

目前,对于引用的实体,需要创建两个实体/存储库,并手工创建fecth。

 类似资料:
  • 我有一个如下的用例: 一个 微服务负责与其他几个固定 API(例如 ArgoCD REST API、STANDARD CORPORATE DRIVEN API)进行通信,以使整个系统处于所需状态。 整个请求需要事务化,这意味着要么所有API请求都需要成功,要么在出现任何错误时回滚。 如果API返回错误,情况对我来说很清楚。“只需恢复之前所做的一切”,但如果我的Quarkus应用程序崩溃会发生什么?

  • 保存package.json依赖项的最佳实践是什么? 例如,我看到很多依赖项是不固定的,比如:

  • 我正在用Laravel6开发一个API。 我有两个模型: CARD->带有card_id ECC的表卡。 我在模型中定义了很多对很多的关系 user.php card.php 这个问题的最佳实践是什么? 我试图用一个响应特定endpoint的特殊控制器来解决这个问题: 但是当我需要存储信息时,我需要将卡和用户的ID传递到URL中,并作为post主体中的对象,如下所示: 有更好的方法吗? 多谢!

  • 译者:cvley torch.multiprocessing 是 Python 的 multiprocessing 的直接替代模块。它支持完全相同的操作,但进行了扩展,这样所有的张量就可以通过一个 multiprocessing.Queue 进行传递,将数据移动到共享内存并只将句柄传递到另一个进程。 注意 当一个 Tensor 传递到另一个进程时,Tensor 的数据是共享的。如果 torch.T

  • torch.multiprocessing是Pythonmultiprocessing的替代品。它支持完全相同的操作,但扩展了它以便通过multiprocessing.Queue发送的所有张量将其数据移动到共享内存中,并且只会向其他进程发送一个句柄。 Note 当Variable发送到另一个进程时,Variable.data和Variable.grad.data都将被共享。 这允许实现各种训练方法

  • 这里有些给使用和编写 Ansible playbook 的贴士. 你能在我们的 ansible-example repository.找到展示这些最佳实践的 playbook 样例.(注意: 这些示例用的也许不是最新版的中所有特性,但它们仍旧是极佳的参考.) Topics 最佳实践 接下来的章节将向你展示一种组织 playbook 内容方式. 你对 Ansible 的使用应该符合你的需求而不是我们