【发布时间】:2014-10-29 07:54:59
【问题描述】:
我是一个初学者,我正在尝试创建一个类似于 twitter 的应用程序
我有 3 个域类,即用户、推文和关注者。
Followers 域是维护两个用户之间的链接以相互关注。
当我对追随者执行 save() 时,它会引发以下错误,我无法弄清楚我哪里出错了:
字段“follower”上的对象“mail.Follower”中的字段错误:拒绝值 [null];代码 [mail.Follower.follower.nullable.error.mail.Follower.follower,mail.Follower.follower.nullable.error.follower,mail.Follower.follower.nullable.error.mail.User,mail.Follower.follower. nullable.error,follower.follower.nullable.error.mail.Follower.follower,follower.follower.nullable.error.follower,follower.follower.nullable.error.mail.User,follower.follower.nullable.error,mail。 Follower.follower.nullable.mail.Follower.follower,mail.Follower.follower.nullable.follower,mail.Follower.follower.nullable.mail.User,mail.Follower.follower.nullable,follower.follower.nullable.mail。 Follower.follower,follower.follower.nullable.follower,follower.follower.nullable.mail.User,follower.follower.nullable,nullable.mail.Follower.follower,nullable.follower,nullable.mail.User,nullable];论据 [follower,class mail.Follower];默认消息 [类 [{1}] 的属性 [{0}] 不能为空] 字段“用户”上的对象“mail.Follower”中的字段错误:拒绝值 [null];代码 [mail.Follower.user.nullable.error.mail.Follower.user,mail.Follower.user.nullable.error.user,mail.Follower.user.nullable.error.mail.User,mail.Follower.user。 nullable.error,follower.user.nullable.error.mail.Follower.user,follower.user.nullable.error.user,follower.user.nullable.error.mail.User,follower.user.nullable.error,mail。 Follower.user.nullable.mail.Follower.user,mail.Follower.user.nullable.user,mail.Follower.user.nullable.mail.User,mail.Follower.user.nullable,follower.user.nullable.mail。 Follower.user,follower.user.nullable.user,follower.user.nullable.mail.User,follower.user.nullable,nullable.mail.Follower.user
这是我的代码
域名
package mail
class User {
String name
String email
String password
int age
static constraints = {
name blank:false
email blank:false
password blank:false
age blank:false
}
static hasMany=[tweets:Tweets,followers:Follower]
}
追随者域
package mail
class Follower {
User follower
static constraints = {
follower nullable:false
}
static belongsTo=[user:User]
}
这是跟随控制器
package mail
import grails.converters.JSON
class FollowerController {
static allowedMethods = [save: "POST", update:"POST", delete:"POST",authenticate:"POST"]
def responseBody =[:]
def index() {}
def list(){
render Follower.list(sort:"dateCreated",order:"desc") as JSON
}
def get(Long id)
{
def followerInstace=Follower.get(id)
render followerInstace as JSON
}
def save()
{
def followerInstace=new Follower(request.JSON)
def user=User.get(session.loggedInUser.id)
println user
if(followerInstace.save(flush:true))
{
user.addToUser(followerInstace.id)
responseBody.message="saved successfully"
responseBody.id=followerInstace.id
responseBody.code=200
render responseBody as JSON
return
}
println followerInstace.errors
responseBody.message="save not successfull"
responseBody.code=400
println responseBody
render responseBody as JSON
}
def show(Long id)
{
def followerInstance=Follower.get(id)
if(followerInstance)
{
responseBody.code=200
resoponseBody.mesage="file found"
responseBody.followerInstance=followerInstance
render responseBody as JSON
}
else
{
responseBody.code=404
responseBody.message="Not Found"
render responseBody as JSON
return
}
}
def delete(Long id)
{
def followerInstace= Follower.get(id)
followerInstace.delete()
responseBody.message = "successfully deleted"
render responseBody as JSON
}
def update(Long id,Long version)
{
def followerInstance = Follower.get(id)
followerInstance.properties = params
if(followerInstance.save(flush:true))
{
responseBody.message="successfully updated"
responseBody.code = 200
responseBody.id = followerInstance.id
}
else {
responseBody.code = 400
responseBody.message = 'Some error(s) exist'
}
render responseBody as JSON
}
}
【问题讨论】:
标签: hibernate grails groovy grails-domain-class grails-controller