0
要使用db side autoinc id大多数事情建议使用不带id的自定义(forInsert)投影,现在我想使用相同的投影进行更新,但我无法弄清楚如何(或者如果可能的话)我可以使用映射投影进行更新吗?
class Users extends Table[User]("user") {
def id = column[UserId]("id", O.PrimaryKey, O.AutoInc)
def email = column[String]("email")
def password = column[String]("password")
def * = id.? ~ email ~ password <>(User, User.unapply _)
def forInsert = email ~ password <>({
(email, password) => User(None, email, password)
}, {
u: User => Some((u.email, u.password))
})
def uniqueEmail = index("idx_email", email, unique = true)
}
这允许你做的做
Users.forInsert.insert(User(None, "foo", "bar"))
现在给出一个ID和一个用户我可以不必设置用户ID更新行?
查询(用户).filter(_。ID == ID).magic(Users.forInsert).update(用户(无, “富”, “酒吧”))
我没有找到官方文档中的任何实例关于使用映射投影进行更新 –