什么是在db中存储html链接的有效方法

时间:2014-02-10 14:32:22

标签: ruby-on-rails database

我是rails和创建rails应用程序的新手。 我想知道在数据库中存储html链接的有效方法。

例如,我有一个名为“Post”的模型,Post在其内容中有html链接(例如http://example.com)。这些链接应呈现如下:

 POST
 <ul>
   <li><a href="...">html link</a></li>
   <li><a href="...">html link</a></li>
   ...
 </ul>

我有三个想法来处理这个问题。

  1. 创建另一个名为“Link”的模型(或类似的东西)来存储相关链接并将它们视为RESTful资源。所以,在Post模型中Post has_many links并将其呈现为<li><%= link_to "#{post.link.name}", post.link.url %></li>

  2. 序列化链接(使用yaml或json)并将它们保存在posts表中新创建的“links”列中,一些如何提取和渲染它们。

  3. 保存html链接; {{1>}在帖子表中新创建的“链接”列中。{/ p>

  4. 这些链接的数量可以增加或减少。

    因此,从可扩展性,应用程序性能和可维护性的角度来看,您认为存储链接的最有效方式是什么。

1 个答案:

答案 0 :(得分:1)

虽然这个想法通常是为了避免关于SO的自以为是的问题/答案,但无论如何我都会回答你的问题。

我肯定会说第一种方式。 Ruby通常是非常面向对象的(true,false,并且nil都有对象,没有原语可以说等)。将链接放入类中会更有意义。由于它将是一个关联,它将具有您使用rails关联(see here)内置的所有其他方法的好处。最重要的是,如果您想:

,它将来很容易扩展
  1. 在链接中添加关注计数
  2. 将链接放在项目中的其他模型上
  3. 跟踪链接后的用户的IP
  4. 还有更多可能性。