gpt4 book ai didi

mysql - 如何使用 play framework 和 scala 将数据插入数据库

转载 作者:行者123 更新时间:2023-11-29 00:30:45 24 4
gpt4 key购买 nike

您好,我正在使用 play 框架和 scala。 将用户配置文件数据插入数据库不起作用。 登录和注册功能正在运行并且数据库 插入和连接是正确的..在控制台中成功创建的mysql连接是 可见所以mysql连接没问题

    the method  inside the application 

def saveUserProfile = Action { implicit request =>
if (request.session.get("userId") == None) {
Results.Redirect("/")
} else {


val user_account_id = request.session.get("userId").get.toLong
val useraccount = UserAccount.findByUserAccountId(user_account_id).get

userProfileForm.bindFromRequest.fold(

errors => BadRequest(views.html.userProfile(errors, useraccount)),

the real problem starts Here... when i am debug this program the next line not executed..
userprofile => {

val userProfileOpt = UserAccount.userProfile(11)
println(userProfileOpt)

in here userProfileOpt contain null value.. that is the real problem..
that is userProfileOpt=null not contain the id..


userProfileOpt match {


case None =>

val updateduserProfile = UserProfile(NotAssigned,
Option(user_account_id),
userprofile.name,
userprofile.date_of_birth, userprofile.gender,
userprofile.image,userprofile.status)

UserProfile.insert(updateduserProfile)
val alert: Alert = new Alert("success", " User Profile Saved")
Common.setAlert(alert)


case Some(userProfileFound: UserProfile) =>

val updatedUserProfile = UserProfile(userProfileFound.id,
userProfileFound.user_account_id, userProfileFound.name,
userProfileFound.date_of_birth, userProfileFound.gender,
userProfileFound.image,userProfileFound.status)

UserProfile.update(updatedUserProfile)
val alert: Alert = new Alert("success", " User Profile Updated")
Common.setAlert(alert)
}
Results.Redirect("/userProfile")
})
}
}



and my userProfile form method is inside the application ,

/**
* UserProfile Form
*/
val userProfileForm = Form(
Forms.mapping(
"id" -> ignored(NotAssigned: Pk[Long]),
"user_account_id" ->optional(longNumber),
"name" -> nonEmptyText,
"data of birth" -> date,
"gender" -> nonEmptyText,
"image" -> nonEmptyText,
"status" -> nonEmptyText )(UserProfile.apply)(UserProfile.unapply))

def index = Action {
val alert: Alert = new Alert("", "")
Common.setAlert(alert)
Ok(views.html.index(signInForm, "Friends+"))
}

....and the method is under..
this method inside the model and the model name is userprofile.....

def userProfile(user_account_id:Long)={
DB.withConnection{ implicit connection =>
val userDetail = SQL(
"""
select * from USER_PROFILE
where USER_ACCOUNT_ID = {user_account_id}
""").on(
'user_account_id -> user_account_id).as(UserProfile.simple.singleOpt)
userDetail
}
}
....i am really strugle this problem with
days ...
i don't know how to handle with this problem..

最佳答案

我有同样的问题,我通过以下方式解决了:

           val userProfileForm = Form(
Forms.mapping(
"id" -> ignored(NotAssigned: Pk[Long]),
"user_account_id" -> optional(longNumber),
"name" -> nonEmptyText,

问题出在这里,出生日期的类型是日期,格式在这里:

              "date_of_birth" -> date("YYYY/MM/dd"),
"gender" -> nonEmptyText,
"image" -> nonEmptyText,
"status" -> nonEmptyText)
(UserProfile.apply)(UserProfile.unapply))
println("1")

关于mysql - 如何使用 play framework 和 scala 将数据插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16643570/

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