在.mode html中避免html实体

我正在尝试使用.mode html中的sqlite3创建一个html表。我想创建一个看起来像<a href="http://assets.example.com/hardware/600">EXAMPLE05593</a>的链接作为表的最后一列。

我有一个如下所示的sqlite数据库:

CREATE TABLE assets(
    "model_name" TEXT,"model_number" TEXT,"manufacturer" TEXT,"asset_tag" TEXT,"id" TEXT                                                                                                          
);

比方说我的桌子是这样的:

model_name  model_number  manufacturer  asset_tag     id                                                          
----------  ------------  ------------  ------------  ----------                                                  
Meraki Z1   Z1            Cisco         EXAMPLE05108  115                                                         
us-24-500w  NULL          ubiquiti      EXAMPLE05348  355

我的查询如下:

select
    model_name,model_number,manufacturer,'<a href="http://assets.example.com/hardware/'
        || id
        || '">'
        || asset_tag
        || '</a>'
    as asset_tag
from assets;

设置.mode column时,我得到了:

model_name  model_number  manufacturer  asset_tag
----------  ------------  ------------  -----------------------------------------------------------------
Meraki Z1   Z1            Cisco         <a href="http://assets.example.com/hardware/115">EXAMPLE05108</a>
us-24-500w                ubiquiti      <a href="http://assets.example.com/hardware/355">EXAMPLE05348</a>

当我在.mode html中运行它时,引号<>都被替换为html实体,所以我得到了

<TR><TH>model_name</TH>
<TH>model_number</TH>
<TH>manufacturer</TH>
<TH>asset_tag</TH>
</TR>
<TR><TD>Meraki Z1</TD>
<TD>Z1</TD>
<TD>Cisco</TD>
<TD>&lt;a href=&quot;http://assets.example.com/hardware/115&quot;&gt;EXAMPLE05108&lt;/a&gt;</TD>
</TR>
<TR><TD>us-24-500w</TD>
<TD></TD>
<TD>ubiquiti</TD>
<TD>&lt;a href=&quot;http://assets.example.com/hardware/355&quot;&gt;EXAMPLE05348&lt;/a&gt;</TD>

而不是

<TR><TH>model_name</TH>
<TH>model_number</TH>
<TH>manufacturer</TH>
<TH>asset_tag</TH>
</TR>
<TR><TD>Meraki Z1</TD>
<TD>Z1</TD>
<TD>Cisco</TD>
<TD><a href="http://assets.example.com/hardware/115">EXAMPLE05108</a></TD>                                        </TR>
<TR><TD>us-24-500w</TD>
<TD></TD>
<TD>ubiquiti</TD>
<TD><a href="http://assets.example.com/hardware/355">EXAMPLE05348</a></TD>                                        </TR>

通常,这是对的,但是我进行html注入。我不希望这些字符替换为其各自的实体。有没有办法在.mode html中指定文字文本?

womenzhelihaiyouyu11 回答:在.mode html中避免html实体

从查询中获取字符串后如何解码呢?这样,您还可以在渲染或返回之前清理生成的HTML。

本文链接:https://www.f2er.com/3101386.html

大家都在问