首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除NodeReference字段中的节点ID [nid:n]

如何删除NodeReference字段中的节点ID [nid:n]
EN

Stack Overflow用户
提问于 2010-04-30 18:47:54
回答 2查看 1.9K关注 0票数 2

这是这个链接的相同问题:

Removing [nid:n] in nodereference autocomplete

根据第一个答案(Grayside),我已经创建了自己的模块并激活。然后我创建一个新的内容,我在nodereference字段中查找一些东西,最后选择它-> it works (不显示nid:n)。

但是,当我查看/预览或保存或编辑内容时,nid:n再次出现。

有人能帮我吗?

EN

回答 2

Stack Overflow用户

发布于 2010-04-30 19:42:25

查看节点时,决定显示内容的是字段的主题化函数,因此,如果您想要更改输出,则需要覆盖它。

编辑节点时的值由#default_value属性确定,因此需要在hook_form_alter()中进行更改

票数 0
EN

Stack Overflow用户

发布于 2010-05-03 17:11:26

谢谢你的回答。

我已经找到解决方案了。(至少在我的情况下)

我修改了这个文件的代码:

drupal\modules\cck\cck\modules\nodereference.module

代码语言:javascript
复制
function nodereference_autocomplete_value($element, $edit = FALSE)
{
  ...
  // $value .= ' [nid:'. $nid .']';    --> Comment this line
  return array($field_key => $value);
}

它工作得很好!在任何情况下都不会出现:没有从列表中选择,也没有在保存、编辑等时出现。

致以问候!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2743924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档