当我从我的数据库中获取用户输入字符串时,我在决定如何将它们串接起来时遇到了麻烦。“或者“,”我想出的解决办法是编造一些疯狂的字符串,我用它们作为分隔符f.ex.“-^-^;“我敢肯定用户不会按照这个顺序使用它们,如果他们这样做,唯一会被搞砸的就是前端。这感觉很糟糕,所以我在寻找一个更好的解决方案。”
# Wont be consumable by backend since there can be "," in user input
SELECT
id
GROUP_CONCAT(my_entry.name SEPARATOR ",")
FROM my_entry
GROUP BY my_entry.id;
# This will work in 99% of cases but feels very hacky
SELECT
id
GROUP_CONCAT(my_entry.name SEPARATOR "-^-^;^-^-^") AS names
FROM my_entry
GROUP BY my_entry.id;
在我的后端,我获取数据并将其转换为数组。
let myData = await getDataForMyEntry()
myData.names = myData.names.split("-^-^;^-^-^")
任何帮助都将不胜感激!
1条答案
按热度按时间vsikbqxv1#
如何使用一个不可打印的ascii字符,这是有效的unicode,但可能不会在任何用户输入使用。
例如,chr(8)=退格
然后用