QSqlRelatonalTableModel und keine QTableView

Alles rund um die Programmierung mit Qt
Antworten
petric
Beiträge: 23
Registriert: 2. September 2008 17:42

QSqlRelatonalTableModel und keine QTableView

Beitrag von petric »

Hallo,

man kann z.B. QSqlRelationalModel mit Hilfe von QDataWidgetMapper dazu verwenden um Datenbankspalten an (nicht Tabellen-)Widgets anzukoppeln. Mit den meisten Feldern geht das auch, aber ...
... ich habe Felder imt einem Indexwert, der in eine andere Tabelle zeigt.
Mit QSqlRelation kann man (so wie ich das verstanden habe) ein Mapping einer Nummer zu einem String in einer zweiten Tabelle hinstellen.

Mein Code (Datenbankverbindung steht schon):

Code: Alles auswählen

QSqlRelationalTableModel model (this);
QDataWidgetMapper mapper (this);
QLineEdit *line = new QLineEdit;

model.setTable ("<Tabelle>");
model.select ();
mapper.setModel (&model);
model.setRelation (<Spaltenindex>, QSqlRelation ("<Maptabelle>", "<Mapspalte>", "<Stringspalte>"));
mapper.addMapping (line, <Spaltenindex>);
mapper.setCurrentIndex (0);
Ich bekomme aber immer den Zahlenwert statt des Strings. Da mache ich bestimmt was falsch, aber was ?
petric
Beiträge: 23
Registriert: 2. September 2008 17:42

Beitrag von petric »

Ich habs inzwischen raus. Der Aufruf von model.select () muss in die vorletzte Zeile.
Antworten