def listele(self):
self.ui.urllist.setHorizontalHeaderLabels(('NO','URL','ZİYARETCİ SAYISI','KAYIT OLDUĞU GÜN'))
veritabani.execute("SELECT * FROM linkler WHERE linkkullaniciadi = '"+kullaniciad+"'")
linkler = veritabani.fetchall()
self.ui.urllist.setRowCount(0)
for satirIndeks, satirVeri in enumerate(linkler):
self.ui.urllist.insertRow(satirIndeks)
for sutunIndeks, sutunVeri in enumerate(satirVeri):
self.ui.urllist.setItem(satirIndeks, sutunIndeks, QTableWidgetItem(str(sutunVeri)))
Sorun gözükmüyor ama veritabanımda bulunan veriyide çekmiyor resimler aşaığıda:
Elbette koymazsınız, ben öyle bir şey söylemedim zaten.
Amacım, veritabanından data çekebildiğinizden emin olmak. Çünkü konu başlığında QTableWidget ile ilgili sorun olduğunu belirtmişsiniz ama sorun orada değil.
Datalar liste içerisinde tuple tipinde geliyor sanıyordum.
Bunu görmek çok faydalı oldu.
Problem şurada:
enumerate fonksiyonu her nesneye kendi numaralandırmasını ekliyor, ardından satirVeri’nin key’lerini o numaralara karşılık getiriyor. Yani şöyle bir sonuç oluyor:
0 id
1 link
2 linkkullaniciadi
3 linkziyaret
4 linkkayitgun
value’lara sıra gelmeden enumerate fonksiyonu görevini tamamlıyor. Dolayısıyla sadece key’ler tabloya ekleniyor.
Yapmanız gereken, enumerate fonksiyonuna sadece value’ları vermek.
for sutunIndeks, sutunVeri in enumerate(satirVeri.values()):