我需要在drupal 7中添加数据到datetime字段。我正试图使用
$node->field_test_a_updated[0]['value'] = $val;
$node->field_test_a_updated[0]['delta'] = 0;
$node->field_test_a_updated[0]['timezone'] = 'UTC';
$node->field_test_a_updated[0]['timezone_db'] = 'UTC';
$node->field_test_a_updated[0]['date_type'] = 'datetime';
其中$val的值为"2010-06-15T00:00:00-00:00"。
当我尝试导入内容时,所有附加到节点的其他字段都被正确迁移,除了日期字段。我也试过使用[LANGUAGE_NONE]选项。
我肯定我错过了一些与drupal7 field api相关的东西。
请帮。
Drupal 7中字段的结构(在这个上下文中)是:
array(
'language_code' => array(
0 => array(
'value => $val,
'other_column_value' => $other_val
)
)
);
delta
由$array['language_code']
中每个数组的键处理,因此您不需要包含它。在您的情况下,您希望代码看起来像这样(当然假设您通过node_save()
之后传递节点):
$node->field_test_a_updated[LANGUAGE_NONE] = array(
0 => array(
'value' => $val,
'timezone' => 'UTC',
'timezone_db' => 'UTC',
'date_type' => 'datetime'
)
);
希望有帮助