Я новичок в kivy developmentpement и все еще изучаю этот язык, на самом деле я работаю в очень простом приложении, я использую recycleview для извлечения данных из моей базы данных.
Моя проблема в том, как выбрать менязначение из этого recycleview и использовать его в другом методе (def ValidRangement) в классе Rangement.Я могу напечатать выбранное значение, но я не могу определить, что выбрано в моем определении ValidRangement.
спасибо за вашу помощь, ниже мой код:
main.py:
class Rangement(Screen):
data_items = ListProperty([])
def __init__(self, **kwargs):
super(Rangement, self).__init__(**kwargs)
self.ListLPN()
def ListLPN(self):
cursor.execute("""SELECT id, numlpn, sku, designation ,"EAN","UVC","UM", statut FROM "Stock_stocksku" WHERE statut = 'En stock non rangé' """)
rows = cursor.fetchall()
# create data_items
for row in rows:
for col in row:
self.data_items.append(col)
def ValidRangement(self,test):
if test == 1:
sql_update_query = """Update "Stock_stocksku" set "statut" = %s where id = %s """
cursor.execute(sql_update_query,("En stock rangé",test))
connection.commit()
main.kv:
<Rangement>:
name : 'rangement'
GridLayout:
cols:1
rows:3
BoxLayout:
orientation : "vertical"
size_hint_y: 0.09
LabelB:
text: "Liste des LPN à ranger"
bcolor: hex('#f15a22')
GridLayout:
cols:1
rows: 1
BoxLayout:
orientation: "vertical"
GridLayout:
size_hint: 1, None
size_hint_y: None
height: 25
cols: 8
LabelB:
text: "N"
LabelB:
text: "LPN"
LabelB:
text: "SKU"
LabelB:
text: "Designation"
LabelB:
text: "EAN"
LabelB:
text: "UVC"
LabelB:
text: "UM"
LabelB:
text: "Statut"
BoxLayout:
RecycleView:
viewclass: 'SelectableLabel'
data: [{'text': str(x)} for x in root.data_items]
SelectableRecycleGridLayout:
cols: 8
default_size: None, dp(26)
default_size_hint: 1, None
size_hint_y: None
height: self.minimum_height
orientation: 'vertical'
multiselect: True
touch_multiselect: True