Ich habe ein komisches Problem. Ich habe ein Domain-Objekt:Grails 2.4.4: Update der Datenbankaufzeichnungen auf createCriteria(). List()
class MyClass {
String name
Boolean new = true
String number
String type
Byte[] data
Date dateCreated
Date lastUpdated
static belongsTo = [
other: MyOtherClass
]
static mapping = {
table 'my_classes'
data column: "data", sqlType: "MEDIUMBLOB"
}
static constraints = {
data maxSize: 8000 * 66
number nullable: true
}
}
im Controller I (bearbeitet gesamte Verfahren zu zeigen) haben:
def list = {
def myOtherClasses = MyOtherClass.getAll()
if (!params.max) params.max = 20
if (!params.sort && !params.order) {
params.sort = "new"
params.order= "desc"
}
def myClassCount = MyClass.createCriteria().count() {
'in'('other', myOtherClasses)
order(params.sort, params.order)
}
def myClassList = MyClass.createCriteria().list() {
'in'('other', myOtherClasses)
order(params.sort, params.order)
}
return [ myClassList: myClassList, myClassCount: myClassCount ]
}
Das Ergebnis, wenn in Ordnung und die Aussicht ist richtig. Aber jedes Mal, wenn dieser Code ausgeführt wird, ist die Dateneigenschaft "Dirty", also wird die Version erhöht und "lastUpdated" wird aktualisiert.
Die Daten-Eigenschaft hält Audiodaten, aber ich denke nicht, dass das relevant ist.
Ich kann nicht herausfinden, was hier vor sich geht. Meine Frage ist also, wie kann ich die Aktualisierung stoppen?
Verwendung: Grails 2.4.4 Hibernate 3.6.10.18 MySQL 5.7.9
Vielen Dank im Voraus :)
Können Sie bitte den Rest der Controller-Aktion posten? – dpcasady
Ich habe den Rest der Methode wie gewünscht hinzugefügt. – havoc74