我的数据库中有一个文件信息表,我正在尝试查询并返回结果的file_path列作为字符串列表。
我的代码如下所示
let userData = $('#userData');
$("input[name = 'fill_with_auth_info']").on('click', function(e) {
let checked = $(this).is(':checked');
if (checked) {
$('#name').val(userData.data('name'));
$('#surname').val(userData.data('surname'));
} else {
$('#name').val(userData.data(''));
$('#surname').val(userData.data(''));
}
});
它返回sqlalchemy.util._collections.result的列表,而不是string的列表。所以我使用以下行进行了转换
path_found = session.query(db.file_table.path).filter([filters]).all()
然而,真的很奇怪。如果我访问路径如“path_found [0] .path”表示法,文件路径中的反斜杠就会被转义一次;
result = [str(path) for path in path_found]
,但是如果我使用转换并使用行结果[0],反斜杠会被转义两次,所以我会得到类似的结果;
"\\Users\\Public\\current\\1.PNG"
我用蛮力去掉额外的反斜杠;
"\\\\Users\\\\Public\\\\current\\\\1.PNG".
有没有更好的方法来处理这种情况,可能会阻止双重逃逸开始?
答案 0 :(得分:1)
你确定你正在做正确的列表理解吗?你不需要result = [path.path for path in path_found]
吗?