我对ktor很陌生,我正在使用它编写一个应用程序。我试图添加作者和他们的书名,并从数据库中检索它们。下面给出了我的架构。(作者是我的收藏名)
authors = [
{
name: "Author1",
books: [{ title: "Book1" }, { title: "Book2" }],
},
];我正在试着检查一个书名是否已经被添加到一个特定的作者下面。因此,我编写了一个findBookitemBytitle函数,如下所示。我的问题是每次我得到一个空的结果。即使实际上满足查询条件的数据也在其中。
我的代码
自从我在这里使用Kmongo作为驱动程序以来,我一直在跟踪Kmongo文档。根据他们的文档,我编写了以下代码。
数据类
@kotlinx.serialization.Serializable
data class Author ( val name: String , val books : MutableList<Bookitem>)
@kotlinx.serialization.Serializable
data class Bookitem (val title :String)函数
private var collection : CoroutineCollection<Author> = MongoConfig.getDatabase().getCollection("authors")
suspend fun findBookitemBytitle(Name:String,Title:String) : Author?{
return collections.findOne(and(Author::name eq Name,Bookitem::title eq Title)) 任何帮助都是非常感谢的。如果需要更多的细节,请询问。
发布于 2022-07-11 16:29:39
我用“/”来解决这个问题。
return collections.findOne(and(Author::name eq Name,books::Bookitem/Bookitem::title eq Title)) https://stackoverflow.com/questions/72930001
复制相似问题