のセットアップで、QSqlRelation
の別のテーブルがうまく機能しています。今、関連するテーブルのその行の追加列を検索したいと思います。これをどのように達成するのですか?QSqlRelationalTableModel追加の関連する列
例テーブル:私はこれまで持っているもの
city ('id', 'name', 'state_id')
state ('id', 'name', 'capital')
:
のように私に行を与えるだろうmodel = QtSql.QSqlRelationalTableModel()
model.setTable('city')
model.setRelation(2, QtSql.QSqlRelation("state", "id", "name"))
model.select()
:
| 1 | 'San Francisco' | 'California' |
今、私は資本をルックアップしたいと思います州のモデルでは、市のテーブルから。これはどうすればいいですか?私はsetRelation
を理解しているので、main_tableからX列のidを取り出し、それをマッピングされた列に置き換えますが、私は状態テーブルを変更したくありません。私はQSqlRecord
とQSqlRelation
を調べましたが、私は何か不足しているようです。
ありがとうございます!
私はそれが事実になるのではないかと心配しました。残念ながら、QSqlQueryModelは読み込み専用で、私のアプリケーションは編集可能なモデル(キャピタルではありません)のため、私のためにはうまくいきません。 QSqlRelationalTableModelのsetRelation部分が現在と同じように機能するように、クエリをオーバーライドすることは可能でしょうか? –