首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >服务3:设置节点创建/更新的分类法术语

服务3:设置节点创建/更新的分类法术语
EN

Drupal用户
提问于 2012-10-22 14:01:58
回答 4查看 2.3K关注 0票数 5

对于自定义节点类型,我定义了一个字段,即保存我定义的分类法词汇表中无限数量的值。

看上去是这样的:

代码语言:javascript
复制
[field_taxonomy] => Array
  ( [und] => Array
      [0] => Array
        ( [tid] => 13 )
      [1] => Array
        ( [tid] => 14 )
      [2] => Array
        ( [tid] => 15 )
  )

这是我在创建节点期间传递给服务器的JSON (按照1):

代码语言:javascript
复制
'field_taxonomy':
  { '11':
    { 'tid': '11'} }

这种格式是可以接受的(也就是说,如果我试图反映上面的结构,就会得到406 ),但是当我查看服务器上的节点时,字段不包含任何术语。

我的请求必须是什么样子,这样我才能成功地在节点上设置分类法术语?

1

EN

回答 4

Drupal用户

发布于 2012-10-29 05:46:26

您的请求应使用以下内容:

代码语言:javascript
复制
"field_taxonomy":{ "und": { "values": "14" }  }
票数 3
EN

Drupal用户

发布于 2012-10-22 22:34:29

正如我从服务文件中了解到的,您不需要在数组0、2等中创建ершы序列。服务模块对其本身进行编号。

此外,如果您使用自动完成的分类法,您应该使用术语id,tid,3次。

代码语言:javascript
复制
"field_taxonomy":  [{
  "tid":{
    "tid":"[tid:11]",
    "tid":"[tid:12]",
    "tid":"[tid:13]"
        }
}]
票数 0
EN

Drupal用户

发布于 2014-06-23 19:04:04

有件事让我绊倒了:

如果您使用视图为术语引用创建了一个自动完成字段,而不是传递术语名称,如下所示:

代码语言:javascript
复制
"field_vocab_tags": {
      "und": [
          {
             "target_id": "40"
          }
      ]
  }

您需要根据视图传递完整的术语标题。就我而言,我的标题是:

代码语言:javascript
复制
Term Title - my_unique_id_field (tid)

所以我不得不设置:

代码语言:javascript
复制
"field_vocab_tags": {
      "und": [
          {
             "target_id": "My Term Title - UNIQUE_ID_23 (40)"
          }
      ]
  }

特别是在使用视图进行自动完成的情况下,视图对标题进行了格式化,就像我前面所做的那样。

如果需要多个引用,只需在字段朗德数组中添加其他数组,如下所示:

代码语言:javascript
复制
"field_vocab_tags": {
      "und": [
          {
             "target_id": "My Term Title - UNIQUE_ID_23 (40)"
          },
          {
             "target_id": "My Next Term Title - UNIQUE_ID_24 (41)"
          },
          {
             "target_id": "Your Term Title - UNIQUE_ID_C (42)"
          }
      ]
  }

希望这能帮上忙。

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

https://drupal.stackexchange.com/questions/48413

复制
相关文章

相似问题

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