Pregunta

Sé que las convenciones de nomenclatura para las tablas utilizadas por los plugins generalmente comenzar con el nombre del plugin y luego el modelo pluralizado. Por ejemplo digamos que tenía un plugin llamado encuesta, con un modelo llamado también PollPoll y otro modelo llamado PollTag continuación, los nombres de las tablas resultantes serían poll_polls y poll_tags. Ellos también tienen una relación HABTM así que lo que es la convención para ese nombre de la tabla? Creo que sería poll_poll_polls_poll_tags, aunque es un poco redundante que tiene sentido desde el primer poll_ representa el nombre del complemento, mientras que poll_polls y poll_tags se refiere a los modelos.

También tienen ningún convenciones de nombres cambiados para los plugins en 1.3? Se lo anteriormente planteado correcta?

¿Fue útil?

Solución

No está seguro acerca de la torta 1,3 (no estoy usando aún), pero esto si tienes razón esto suena como un caso perfectamente aceptable de romper convenciones y definir el joinTable, y las claves externas en las relaciones de modelos y posiblemente en el plugin.

¿Por qué su plugin requiere una tabla de unión? Parece un problema de diseño. Tal vez hay un caso en el que esto es necesario, pero si tuviera una relación HABTM con un plug-in, me gustaría añadir una columna modelname a la mesa del plug-in, en lugar de tener que crear una nueva tabla para cada modelo que quería utilizar el plugin.

Otros consejos

En realidad no es todavía una convención que "tablas utilizadas por los plugins por lo general comienzan con el nombre del plugin y entonces el modelo en plural".

El único lugar se introduce la idea está en un ejemplo en el libro , que dice en realidad ", se recomienda que el nombre de su controladores de plugins algo relativamente único con el fin de evitar conflictos de nombres con aplicaciones de padres ... es posible que desee ser creativo con los nombres de controladores, o anteponer el nombre del plugin para el nombre de clase . "

Su Tabla / modelo / controlador / Ver nombres deben seguir las convenciones de nomenclatura de CakePHP normales, y tomar las precauciones necesarias para evitar el choque espacio de nombres. Por lo que sería perfectamente posible tener una mesa "foo_orders" para un modelo "foo_order" en el plugin de barra.

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