我有一个插入挂钩,只要用户添加节点就会捕获节点。 所以这是我的代码:
function blah_insert($node){
$record = array(
'nid' => (int) $node->nid
);
drupal_write_record('table_name', $record);
}
架构::
table_name(
nid int primary key not null
)
对drupal_write_record的返回值执行检查会导致FALSE。 db_query也不起作用。 var_dump确认所有字段都是它们应该的位置。
节点正确地插入到节点表中,但不是由我的安装文件中的模式定义的表(当然不是像我上面的模式那样写的 - nid被定义为int和所有其他相关的字段)。
有没有人知道发生了什么?
答案 0 :(得分:1)
blah
(或者您在_insert
之前提出的任何内容hook_insert
的文档:“仅在定义节点内容类型的模块上调用此挂钩”。可能是您正在寻找hook_node_insert()
,而是响应插入任何类型的节点。一旦你检查了那些仍然不能正常工作就会出现你的Drupal安装问题更大的问题...如果你的架构正如你所说的那样,那就是如果函数确实正在运行,则没有理由drupal_write_record()
不起作用。