QSqlRelatonalTableModel und keine QTableView
Verfasst: 2. September 2008 18:30
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):
Ich bekomme aber immer den Zahlenwert statt des Strings. Da mache ich bestimmt was falsch, aber was ?
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);