我很难添加从数据库中提取的值(语言)列表,并希望它作为微调器小部件中的值列表提供。
蟒蛇部分:
def get_langs(self):
session = Session()
Base.metadata.create_all(engine)
# get active language as text label:
result1 = session.query(Language).filter_by(active = 1).first()
self.label_lang.text = str(result1)
# get all other languages as list of values:
result2 = session.query(Language).filter_by(active = 0).all()
self.label_lang.values = str(result2)
KV模板部分:
Spinner:
id: settings_lang
size_hint: (None, None)
width: 200
height: 40
padding_left: 20
self: root.get_langs()
我正在从我的数据库中提取值列表(通过 sqlalchemy),但 kv 模板中的"values"属性仅接受 str/unicode 因此 str(result2)。但是,我得到的不是语言列表,而是该列表中的字符列表。
[Engl我sh,
Deutsch]
但我希望将这些视为值:英语德语
谁能建议?谢谢
您要将结果转换为单个字符串,而不是字符串列表。
self.label_lang.values = map(str, result2)
可能是你想要的。