【问题标题】:Yesod return whole Entity after insert?Yesod 插入后返回整个实体?
【发布时间】:2019-05-09 13:09:06
【问题描述】:

基本上现在我运行fbId <- runDB $ insert myNewFooBar 并返回Key FooBar。有什么方法可以直接从插入返回整个FooBar 的值,而无需在之后运行runDB $ get404 fbId 的单独查询?

【问题讨论】:

  • myNewFooBar不是已经是整个FooBar的值了吗?
  • 那时它不会有 ID 吧?
  • 好的,这样结合@bergey 的建议就可以解决所有问题。非常感谢!

标签: haskell yesod haskell-persistent


【解决方案1】:

我只是构建Entity Haskell 端:Entity fbId myNewFooBar

【讨论】:

    【解决方案2】:

    另一个更短的选项是使用insertEntity,它返回一个实体而不是记录。在后台,此函数调用 insert 并根据提供的记录和返回的键构建实体(无需额外的数据库查询)。

    insertedFooBar <- runDB $ insertEntity myNewFooBar
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-10
      • 1970-01-01
      • 2014-07-16
      • 1970-01-01
      • 1970-01-01
      • 2021-02-10
      相关资源
      最近更新 更多