在drupal 6中存储简单数据并与视图共享的最有效方法?

时间:2010-01-21 23:02:00

标签: drupal data-storage

我有一个简单的表单,允许用户从选择菜单中选择一个选项,然后将其保存在数据库中。我需要存储全名,以便视图可以使用它。所以我的数据库中的表可能如下所示:

nid | uid | type
------------------
1   | 2   | 0
2   | 2   | 3
1   | 3   | 5
3   | 1   | 4

依旧......我正在考虑做一个基本的一对多关系表,如:

tid | name
----------
0   | random name 1
1   | random name 2
2   | random name 3
3   | random name 4

但我最多只有6-7种类型,所以我不确定这是否有效。在这种情况下,简单地存储全名而不是ID会更好吗?另一种方法可能是使用variable_get,但是我还需要自定义字段模块,它允许在视图中使用php代码。有什么更好的方法在drupal中做到这一点?感谢。

2 个答案:

答案 0 :(得分:1)

我会通过将术语放在分类中并在CCK节点类型中使用该分类来实现此目的。通过清除正文标签关闭正文字段,并使用auto nodetitle关闭标题字段。这使得您的节点为该类型添加表单,只作为分类术语的选择列表,并且所有保存的节点都会暴露给视图并可由用户和/或术语过滤。

这会给你一个看起来很像你所描述的数据库,带来额外的开销,你永远不会注意到因为Drupal缓存了所有内容。

答案 1 :(得分:0)

它更好,因为需要较少的支持“一段时间后”......而且我认为性能不会如此差异,而不是保持在现场。你也节省了内存,因为蜇只存储在小桌子里,引用数字不需要那么多地方......