К сожалению я совсем не говорю по-английски и очень плохо пишу
Суть вопроса свелась к алгоритму продемонстрированному в /demos/books т.е. использовался фильтр, я же пытался применить QSqlQueryModel,
для QSqlRelationalTableModel используется
cdi.comboStreet->setCurrentIndex(cdi.comboStreet->findText(rec.value(streetIdx).toString()));
cdi.comboStreet->setCurrentIndex(cdi.comboStreet->findText(rec.value(streetIdx).toString()));
To copy to clipboard, switch view to plain text mode
я же для QSqlQueryModel делал так:
cdi.comboStreet->setCurrentIndex(cdi.comboStreet->findText(rec.value("street_cod").toString()));
cdi.comboStreet->setCurrentIndex(cdi.comboStreet->findText(rec.value("street_cod").toString()));
To copy to clipboard, switch view to plain text mode
И соответственно не получал необходимого результата( and don,t work).
Вот так работает:
QModelIndex currentIndex
= modelFlats
->index
(0, streetIdx
);
if (modelFlats->data(currentIndex).toString() != text)
modelFlats->setData(currentIndex, cdi.comboStreet->currentText());
QString cod
= cdi.
comboStreet->currentText
();
QString queryStreet
= ("UPDATE tbl_flats,tbl_street SET tbl_flats.street_cod = tbl_street.street_cod WHERE tbl_street.street_name = '" + cod + "' And tbl_flats.flats_cod = " + flatcod + " ;");
modelQuery->setQuery(queryStreet);
QModelIndex currentIndex = modelFlats->index(0, streetIdx);
if (modelFlats->data(currentIndex).toString() != text)
modelFlats->setData(currentIndex, cdi.comboStreet->currentText());
QString cod = cdi.comboStreet->currentText();
QString queryStreet = ("UPDATE tbl_flats,tbl_street SET tbl_flats.street_cod = tbl_street.street_cod WHERE tbl_street.street_name = '"
+ cod + "' And tbl_flats.flats_cod = " + flatcod + " ;");
modelQuery->setQuery(queryStreet);
To copy to clipboard, switch view to plain text mode
Bookmarks