Hola a todos.
Estoy comenzando con un proyecto web de un CMS con sopoerte para varios idiomas en el frontend. Estoy empezando con el diseño de la base de datos y prácticamente la tengo toda diseñada excepto la parte relacionada con la sección Home o página principal del sitio.
El Home se va a gestionar en el backend en una sección específica para ello. Dentro del home habrá un slider con algunas imágenes, una sección donde aparecerán una serie de cursos seleccionados por el administrador y otras secciones similares a la anterior (profesores, lugares, etc. Las informaciones de cada una de estas secciones se encuentra cada una en su tabla correspondiente). El tema del slider lo tengo solucionado. El problema que tengo es cómo diseñar las tablas para guardar la información sobre las secciones de cursos, profesores, lugares, etc dentro del Home.
Tengo varias ideas en la cabeza, pero no sé cuál me conviene. Igualmente no me llegan a convencer del todo ninguna de ellas:
- Tener una tabla con una sola fila y las siguientes columnas: lista_cursos, lista_profesores, lista_lugares... En cada una de ellas guardaré una lista de identificadores, que apuntan a las claves primarias de sus tablas correspondientes.
- Tener una tabla por cada sección (una para profesores, otra para cursos...) y en cada fila introducir una clave ajena (clave foránea) que apunte al curso, profesor, lugar... respondiente. Se supone que la web no tendrá un tráfico excesivo, así que no creo que afecte mucho algún que otro "JOIN" de más, pero aún así este método no me convence del todo.
- En cada tabla correspondiente agregar un par de columnas: "home" y "orden_home". La primera será un booleano para indicar si ese curso, profesor... está seleccionado para aparecer en el Home y la segunda para poder ordenar esos elementos.
Como he dicho antes, en principio la web no tendrá un tráfico excesivo. ¿Cuál creéis que será mejor opción? ¿Alguna otra alternativa más óptima que se os ocurra?
Gracias de antemano, y buen día a todos :)