эй, у меня есть приложение для реагирования, которое отправляет заказ на мой api, например
[
{
"product_id":13,
"quantity":2
},
{
"product_id":12,
"quantity":2
}
]
и что я хотел бы с ним сделать, разобрать этот json на Seq [Product] и здесь начинается моя проблема, я не знаю, как сохранить этот Seq с помощью slick.
def createMany(productList: Seq[Product]): Future[Seq[Int]] = db.run {
for {
p <- productList
} yield products += p
}
где products - это TableQuery [Product], думал о чем-то вроде этого, но я получаю
Type mismatch, expected: DBIOAction[NotInferedR, NoStream, Nothing], actual: Seq[JdbcProfile.this.ProfileAction[Int, NoStream, Effect.Write]]
Я пытаюсь вернуть список идентификаторов товаров, которые я только что вставил.

Tomcy прав в том, что вам нужно использовать ++= вместо += при вставке Seq. Также, если вы хотите вернуть идентификаторы после вставки, вы можете попробовать:
products returning products.map(_.id) ++= productList
не могли бы вы рассказать, какую версию slick вы используете? Кроме того, я думаю, что когда вы запустите db.run {...} this, он вернет вам Seq [Future [Int]]. Если вы хотите добавить партию Продукта, вам нужно использовать ++ = вместо + =.