gpt4 book ai didi

scala - 将主键获取为整数的最佳语法

转载 作者:行者123 更新时间:2023-12-04 22:51:51 26 4
gpt4 key购买 nike

我已经使用Scala和Play Framework已有大约一个月了,但我仍然没有找到使用anorm库编写SQL请求的令人愉快的方法。

在我的应用程序中,我经常发现自己正在做这种事情:

// projectId and componentId are foreign keys. 
case class ProjectComponent(id: Pk[Int], projectId: Int, componentId: Int)

object ProjectComponent extends Magic[Event]
{
def findForProject(project: Project) : List[ProjectComponent]
{
val projectId = project.id.get.get
ProjectComponent.find("projectId=" + projectId).list()
}
}


我不满意的行是:

// project.id returns Pk[Int]
// project.id.get returns Option[Int]
// project.id.get.get returns Int
val projectId = project.id.get.get


有没有更好的方法来获取项目ID为整数?考虑一下,我只需要项目ID即可编写查询。 Play中可能有一个功能会自动处理Pk类型。

我是Scala和Play的新手,所以我可能会错过文档中显而易见的内容。

谢谢,

克莱姆

最佳答案

我不知道有什么直接在查询中使用Pk的方法,尽管我不会对此感到惊讶。关于检索Pk值,我在Pk类上发现了以下内容:

def apply() = get.get


因此,这两个调用是等效的:

val projectId = project.id.get.get
val projectId = project.id()

关于scala - 将主键获取为整数的最佳语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8434022/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com