Seite 1 von 1

QSqlRelationalTableModel aktualisieren

Verfasst: 27. Juli 2018 12:58
von Chri
Hi
Habe Datenbank und eine treeview, in der gefiltert wird:

Code: Alles auswählen

    QSqlRelationalTableModel *qmod = new QSqlRelationalTableModel(this, myDB);
    qmod->setEditStrategy(QSqlTableModel::OnFieldChange);
    QString filterstring = "PR_ID='"+QString::number(projID)+"'";
    qmod->setFilter(filterstring);
    qmod->select();
    ui->treeView_BT->setModel (qmod);
ok, das passt.

Nun möchte ich mit einem Pushbutton eine bestimmte (die aktuelle) Zeile löschen:

Variante 1:
Mit Query ("DELETE FROM Bauteile....) , in der Datenbank wird es auch durchgeführt, nur gelingt es mir nicht, die view zu aktualisieren:
ui->treeView_BT->model()->select() gibt es nicht. Die gelöschte Zeile wird weiter angezeigt.

Variante 2:

Code: Alles auswählen

ui->treeView_BT->model()->removeRow(ui->treeView_BT->currentIndex().row());
Es wird in der Datenbank gelöscht, in der view bleibt jedoch eine leere Zeile, die ich nicht weg bekomme.

Wie funktioniert das Aktualisieren der view?

LG
Chri