3つのパラメーターを受け取り、ブール値を返すServiceオブジェクトのメソッドを呼び出すためにAjaxクエリを作成する必要があります。次に、このブール値を使用して、事前に発生する検証メッセージを表示します。
これは私が現在持っているものです(機能していません)が、他のことを試しましたが、役に立ちませんでした。JQueryとGrailsを使用しています。
var isUnique = ${remoteFunction(
service: 'Project',
action:'checkUniqueUserProjectId',
params:{
// These values are from hidden fields in the form.
// userId and projectId are string values and the group is an object
uniqueId: userId,
group: userGroup,
projectId: myProjectId
}
)}
ProjectServiceで呼び出されるメソッドは次のとおりです。
// Check whether or not a Project with the provided uniqueId already exists
// in the database that is not itself.
def checkUniqueUserProjectId(uniqueId,group,projectId) {
def filterCriteria = Project.createCriteria()
def projectList = filterCriteria.list {
and {
eq("userProjectId", uniqueId)
eq("group", group)
ne("id",projectId)
}
}
if(projectList.empty)
return true
else
return false
}
どんな助けでも大歓迎です!