Cómo agregar un campo de nodo a una tabla de base de datos en un módulo personalizado

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

  •  16-10-2019
  •  | 
  •  

Pregunta

Cuando estoy escribiendo mi propio módulo personalizado, y el diseño de una tabla de base de datos, si quiero usar el nid campo para hacer referencia a un nodo, porque quiero que mi módulo para agregar algo a cada nodo, cómo debería implementar esto en mymodule.install archivo del módulo?

¿Fue útil?

Solución

La mayoría de las veces es probable que desee utilizar la API de campo (módulo CCK en D6) en lugar de agregar tablas personalizadas o modificar por sí mismo nodo.

Adición de tablas personalizadas era una muy D5 manera de hacer las cosas.

Si quieres hacer esto tendrá que definir sus tablas usando hook_schema() y luego en su mymodule_install () gancho puede llamar drupal_install_schema() esto debería crear una nueva tabla que representa su módulo.

Es importante mencionar que el esquema siempre debe representar a su esquema actual. Si se agrega una columna que debe alterar el esquema para que una persona que instala el módulo obtendrá el esquema correcto, sino también escribir una función de actualización para modificar la tabla de modo que los usuarios existentes reciben el nuevo esquema correcto.

Es posible alterar las tablas de otros módulos, pero creo que deben ser cubiertos en otra pregunta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a drupal.stackexchange
scroll top