Drupal은 노드 본문의 내용을 어디에 저장합니까?


48

노드 테이블에서 실제 바디를 제외한 모든 것을 찾을 수 있습니다. 이 본문을 어디에서 찾을 수 있습니까? 어딘가에 블롭으로 저장되고 있다고 가정합니다.


노드의 모든 필드가 Drupal 7에 저장된 위치를 이해하려면 drupal.stackexchange.com/questions/68515/…를
claws

답변:


38

여기에 드루팔 설치가 실행되고 있지 않지만 몇 주 전에이 질문을 직접 해보았는데 답을 찾는 데 시간이 걸렸습니다.

올바르게 기억하면 노드의 본문이 노드의 "개정"을 유지하는 데 사용되는 테이블에 저장됩니다. 이름이 무엇인지 잘 모르겠지만 "node_revision"또는 "node_revisions"와 같은 이름이어야합니다.


4
옳은. 그건 node_revisions.body

노드 본체를 분리하는 목적은 개발자가 원하는만큼 다양한 컨텐츠 유형을 작성하고 모든 node_id를 포함하는 하나의 테이블 만 가질 수 있도록하는 것입니다. 본문을 포함하는 개정판은 별도의 테이블에 있습니다.
Randell

webdevgeeks.com 링크가 깨졌습니다.
reprogrammer

이 답변이 어떤 버전의 drupal에 맞습니까?
발톱

1
@claws,이 답변은 Drupal 6, Drupal 7의 경우 body 필드는 field_data_body 테이블에 저장됩니다.
Yogesh

53

Drupal 7에서 본문이 field_data_body 테이블로 이동되었습니다.


2
Drupal 7 사이트에서 "field_data_body"및 "field_revision_body"테이블에서 내용의 본문을 볼 수 있습니다.
reprogrammer

본문 필드를 포함하는 컨텐츠 유형 (제목이 아닌 다른 필드와 동일)이있는 경우에만 해당됩니다. 예를 들어 설문 조사에는 설문 조사가 없습니다.
Scott Evernden

1
정확하지 않습니다. 본문은 value이라는 필드 의 열에 저장됩니다 body. 이것은 기본적으로 테이블 의 body_value열에 저장됩니다 field_data_body. 그러나 MongoDB는 body필드에 데이터를 저장하기 위해 아무것도 사용하지 못하게 합니다 (거의 아무것도 아닙니다 : 표준 프로파일은 SQL로 데이터를 생성하므로 나중에 MongoDB를 사용하여 고통스러운 마이그레이션을 저장하려는 경우 최소를 사용하는 것이 좋습니다).

노드와의 관계는 무엇입니까 field_data_body? 후자는 전혀 없습니다 nid또는 vid열 (적어도 그 이름을 가진)
폭발 환약

노드 테이블 NID의 기준 인 colume field_data_body에 entity_is가
혁신적인 kundan는


8

Drupal 6에서 노드 본문의 내용은 'body'필드 아래의 'node_revisions'테이블에 저장됩니다.

node_revisions.body

Drupal 7에서 노드 본문의 내용은 'body_value'필드 아래의 'field_data_body'테이블에 저장됩니다. 컨텐츠 개정이있는 경우 'body_value'필드 아래의 'field_revision_body'테이블에 데이터를 저장합니다.

field_data_body.body_value

field_revision_body.body_value

Drupal 8에서 노드 본문의 내용은 'body_value'필드 아래의 'node__body'테이블에 저장됩니다. 컨텐츠 개정이있는 경우 'body_value'필드 아래의 'node_revision__body'테이블에 데이터를 저장합니다.

node__body.body_value

node_revision__body.body_value


5

컨텐츠 유형 본문 컨텐츠는 field_data_bodyfield_revision_body테이블에 저장됩니다 .


2

이것은 당신이 사용할 SQL입니다 (MySQL 클라이언트) :

SELECT node.nid,node.vid,type,node.title, body 
FROM node join node_revisions ON node.nid = node_revisions.nid
WHERE node.title = 'some title';

예, Drupal 6의 "node_revisions"테이블이 정답입니다.


2

Drupal 7에서 노드 본문은 field_data_body 및 field_revision_body에 있습니다. CCK를 사용하여 추가 된 새로운 필드 (Drupal 7에서 코어에 추가됨)는 field_config 및 field_config_instance에 있습니다. Drupal6에서 노드 본문은 node_revisions에 저장되고 작성된 필드는 content_node_field 및 content_node_field_instance에 저장됩니다.


1

나는 몇 가지 새로운 콘텐츠 형식을 만든, 그들을 위해, 신체 또는 설명을 테이블의 컬럼 field_description_value가는 새로운 콘텐츠 형식의 이름입니다.content_type_<type_name>type_name


1

Drupal 7에서는 field_revision_body에 있습니다.이 테이블을 설명하면 본문 요약 및 긴 텍스트 유형에 대한 col이 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.