快速的問題,我認爲......Drupal的 - 更新內容類型與新領域不更新現有內容
我做了其中有一些自定義內容類型Drupal站點。我用這些創建了一系列記錄,然後我不得不修改自定義內容類型來更改其中一個字段,並給它一個新的默認值。
問題是現有記錄不會使用此默認值進行更新。顯然,我必須去重新編輯一切,以添加默認值。
NEW記錄具有默認值。那裏沒問題。
這只是一個Drupal的事情,還是我錯過了一個把戲?
感謝, 休
快速的問題,我認爲......Drupal的 - 更新內容類型與新領域不更新現有內容
我做了其中有一些自定義內容類型Drupal站點。我用這些創建了一系列記錄,然後我不得不修改自定義內容類型來更改其中一個字段,並給它一個新的默認值。
問題是現有記錄不會使用此默認值進行更新。顯然,我必須去重新編輯一切,以添加默認值。
NEW記錄具有默認值。那裏沒問題。
這只是一個Drupal的事情,還是我錯過了一個把戲?
感謝, 休
我敢肯定,這是一個「Drupal的東西」(更確切地說,CCK的事情;)
我絆了這個問題曾經和我記憶所及,發現CCK中沒有邏輯將追溯應用到現有節點。因此,您需要通過某種方式確保每個受影響節點的加載/保存週期。對於少量,可以通過「admin/content/node/overview」上的一個或其他批量操作完成。對於更大量的節點,這可能需要在所有受影響的節點上調用node_load()
,node_save()
的小腳本。使用SQL
,考慮到與字段值的節點未設置是
SELECT nid,vid
from node where type='procedure' and nid not in (select entity_id from field_data_field_pr_choix_du_document)
field_data_field_pr_choix_du_document是對應於我的場和包含與實體ID referinng節點設置一個條目面值表
我使用SQL INSERT ... SELECT語法做
https://dev.mysql.com/doc/refman/5.5/en/insert-select.html
INSERT INTO `field_data_field_pr_choix_du_document` (`entity_type`, `bundle`, `deleted`, `entity_id`, `revision_id`, `language`, `delta`, `field_pr_choix_du_document_value`)
SELECT 'node','procedure',0,nid,vid,'und',0,'Importer un document'
from node where type='procedure' and nid not in (select entity_id from field_data_field_pr_choix_du_document)
張貼在未來的任何人: https://www.drupal.org/project/field_defaults
允許您更新現有場
歡迎來到Stack Overflow!雖然這可能會回答這個問題,[這將是可取的](http://meta.stackoverflow.com/q/8259)在這裏包括答案的重要部分,並提供鏈接供參考。 – IKavanagh 2015-11-20 19:30:02
亨裏克嗨創建一個場或編輯默認值時存在的內容,是的,我擔心會出現這種情況!感謝您的提示,我會仔細研究一下腳本。 – MrFidge 2010-01-28 13:29:18