Onde o Drupal armazena o conteúdo do corpo de um nó?


48

Na tabela de nós, você encontrará tudo, exceto o corpo real. Onde posso encontrar esse texto do corpo? Estou assumindo que está sendo armazenado como uma bolha em algum lugar.


Para entender onde todos os campos de um nó estão armazenados no Drupal 7: consulte drupal.stackexchange.com/questions/68515/…
garras

Respostas:


38

Não tenho uma instalação drupal em execução aqui, mas me perguntei essa mesma questão há algumas semanas e demorou algum tempo para encontrar a resposta.

Se bem me lembro, o corpo do nó é armazenado na tabela usada para manter as "revisões" do nó. Não sei ao certo qual é o nome, mas deve ser algo como "node_revision" ou "node_revisions".


4
corrigir. é node_revisions.body

Apenas para adicionar ... o objetivo de separar o corpo do nó é permitir que os desenvolvedores criem quantos tipos de conteúdo diferentes quiserem e tenham apenas uma tabela que contenha todos os ID_de_ nó. As revisões, que incluem o corpo, estão em tabelas separadas.
213 Randell Randell

O link webdevgeeks.com está quebrado.
Reprogrammer

Para qual versão do drupal esta resposta está correta?
garras

11
@ garras, esta resposta é para o Drupal 6, para o Drupal 7 o campo do corpo é armazenado na tabela field_data_body.
Yogesh

53

No Drupal 7, o corpo foi movido para a tabela field_data_body.


2
No meu site Drupal 7, posso ver o corpo do meu conteúdo nas tabelas "field_data_body" e "field_revision_body".
Reprogrammer

Isso é verdade apenas se você tiver tipos de conteúdo que incluem um campo de corpo (o mesmo que qualquer outro campo que não seja o título). Pesquisas, por exemplo, não têm uma.
23312 Scott Evernden

11
Não exatamente correto. O texto do corpo é armazenado na valuecoluna de um campo chamado body. Este , por padrão é armazenado na body_valuecoluna da field_data_bodytabela. No entanto, nada impede você de usar, digamos, o MongoDB para armazenar os dados no bodycampo (quase nada: o perfil padrão os cria no SQL, então é melhor usar o mínimo se quiser usar o MongoDB para salvar uma migração dolorosa posteriormente).

Qual é a associação entre um nó e field_data_body? Este último não possui coluna nidou vid(pelo menos não com esse nome) #
9800 Decomponent

Não é um colume entity_is em field_data_body que é de referência a partir da tabela nid nó
kundan inovador


8

No Drupal 6, o conteúdo do corpo do nó é salvo na tabela 'node_revisions' no campo 'body'.

node_revisions.body

No Drupal 7, o conteúdo do corpo do nó é salvo na tabela 'field_data_body' no campo 'body_value'. Caso existam revisões de conteúdo, os dados também serão salvos na tabela 'field_revision_body' no campo 'body_value'.

field_data_body.body_value

field_revision_body.body_value

No Drupal 8, o conteúdo do corpo do nó é salvo na tabela 'node__body' no campo 'body_value'. Caso existam revisões de conteúdo, os dados também serão salvos na tabela 'node_revision__body' no campo 'body_value'.

node__body.body_value

node_revision__body.body_value


5

Seus tipos de conteúdo, o conteúdo do corpo é salvo em field_data_bodye field_revision_bodytabelas.


2

Este é o SQL que você usaria (cliente 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';

Então, sim, a resposta é a tabela "node_revisions" no Drupal 6.


2

No Drupal 7, o corpo do nó é encontrado em field_data_body e field_revision_body. Novos campos adicionados usando o CCK (que é adicionado ao núcleo no Drupal 7) são encontrados em field_config e field_config_instance. No Drupal6, o corpo do nó é armazenado em node_revisions e os campos criados são salvos em content_node_field e content_node_field_instance.


1

Criei alguns novos tipos de conteúdo e, para eles, o corpo ou a descrição vão para a coluna field_description_value da tabela content_type_<type_name>onde type_nameé o nome do novo tipo de conteúdo.


1

No Drupal 7, está em field_revision_body. Se você descrever essa tabela, verá uma coluna para Resumo do corpo e seu tipo de texto longo.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.