我有以下问题:我将项目列表存储在数据库中并将它们显示在网页上。我需要为网页上的每个项目分配 id 或 class。最直接的方法是分配与数据库中相同的 id。这是一个例子:
数据库
ID  |  Name
----+-----------
1   |  Apple
2   |  Orange
3   |  Banana
HTML
<ul>
  <li id="1">Apple</li>
  <li id="2">Orange</li>
  <li id="3">Banana</li>
</ul>
明显的问题是 HTML id 不能以数字开头。所以我想给 id 一个前缀,例如:
<ul>
  <li id="f1">Apple</li>
  <li id="f2">Orange</li>
  <li id="f3">Banana</li>
</ul>
但这会在 HTML 和数据库之间造成不一致,并使处理对象更加复杂。为了解决这个问题,我必须在数据库中添加一个新列:
ID  |  Name     |  HTML_ID
----+-----------+---------
1   |  Apple    |  f1
2   |  Orange   |  f2
3   |  Banana   |  f3
这似乎也不是理想的解决方案,因为现在我每次添加新项目时都需要手动将 HTML_ID 输入到数据库中。而且我需要确保 HTML_ID 始终是唯一的。
我相信人们在进行 Web 开发时经常会遇到这个问题。我想知道是否有比上面的示例更好的方法来处理这个问题。