1
<pizzeria>
   <logo>logo.jpg</logo>
   <pizzas>
       <pizza id="p001">
           <nombre>Carbonara</nombre>
           <imagen>carbonara.jpg</imagen>
       </pizza>
       <pizza id="p002">
           <nombre>Barbacoa</nombre>
           <imagen>barbacoa.jpg</imagen>
       </pizza>
       <pizza id="p003">
           <nombre>Gourmet</nombre>
           <imagen>gourmet.jpg</imagen>
       </pizza>
       <pizza id="p004">
           <nombre>Boloñesa</nombre>
           <imagen>bolonesa.jpg</imagen>
       </pizza>
   </pizzas>
</pizzeria>

他们要求我使用 FLWOR 将徽标图像和其他图像(表中的其他图像)放入现有数据库中。图像存储在名为“images”的文件夹中。如果您需要更多信息,请告诉我。

我试过这个:

{
  for $h in doc("/db/exercise/pizzeria.xml")//pizza
  return
    <tr>
      <td>{$h/imagen}</td>
    </tr>
}

但这显然没有奏效。

4

1 回答 1

1

如果您正在生成 HTML,那么您需要一个具有指向该图像文件的属性的img元素:@src

{
for $h in doc("/db/exercise/pizzeria.xml")//pizza
return
  <tr>
    <td><img src="images/{$h/imagen/text()}" alt="{$/nombre/text()}"/></td>
  </tr>
}
于 2020-05-10T22:45:59.643 回答