我有一个对象列表视图。我从它中删除一行,然后在没有删除行的情况下更新列表。我将数据库中的数据填充到列表中。我尝试过重新集邮者,但之后似乎使用了列表中已经存在的数据。
我想我可以用clearAll (清除列表)来解决这个问题,然后添加对象并再次添加数据库。但似乎应该有可能只是更新名单。这是我的密码:
def deletemeas(self):
MAid = self.objectma.id
MAname = self.pagename
objectsRemList = self.tempmeasurements.GetCheckedObjects()
print 'objectremlist', objectsRemList
for measurement in objectsRemList:
print measurement
Measname = measurement.filename
Measid = database.Measurement.select(database.Measurement.q.filename == Measname)[0].id
deleteMeas = []
deleteMeas.append(MAid)
deleteMeas.append(Measid)
pub.sendMessage('DELETE_MEAS', Container(data=deleteMeas)) #to microanalyse controller
#here I get the latest information from the database what should be viewed in the objectlist self.tempmeasurements
MeasInListFromDB = list(database.Microanalysismeasurement.select(database.Microanalysismeasurement.q.microanalysisid == MAid))
print 'lijstmetingen:', MeasInListFromDB
#this doesn't work
self.tempmeasurements.RefreshObjects(MeasInListFromDB) 发布于 2017-11-17 15:43:46
好吧,这其实比我想的要简单.
我增加了这一行:
self.tempmeasurements.RemoveObject(measurement)因此,我首先从数据库表中删除数据,然后删除了objectlistview中的行。
https://stackoverflow.com/questions/47353043
复制相似问题