【发布时间】:2016-09-22 09:34:05
【问题描述】:
我在 erlang 中有 mysql select 的多行结果:
{_,_, Result} = ejabberd_odbc:sql_query(Server,
[<<"select group, GROUP_CONCAT(members.username separator ', ') AS member from members WHERE id='">>,Id,<<"'">>]),
结果 = [{"group","username1,username2, username3 ......."}.... {"group","username1,username2, username3 ........"} ]
想要将结果转换为 xml 元素:
xml = <group "xxxxxx">
<members>
<member>
<username>xxxxxx</username>
</member>
<member>
<username>xxxxxx</username>
</member>
<member>
.........
</member>
</members>
</group>
........
<group "xxxxxx">
<members>
<member>
<username>xxxxxx</username>
</member>
<member>
<username>xxxxxx</username>
</member>
<member>
.........
</member>
</members>
</group>
在循环中将其放入 xmpp iq 子元素的任何简单方法:
SubEl = [#xmlel{name = <<"members">>,
attrs = [{<<"xmlns">>, ?NS_CHAT}],
children = [#xmlel{name=<<"member">>,
attrs = [{<<"username">>, Username1}],
children = []}]
[#xmlel{name=<<"member">>,
attrs = [{<<"username">>, Username2}],
children = []}]
.............
}],
【问题讨论】:
标签: mysql xml erlang xmpp ejabberd