Estoy creando una aplicación web con Ruby on rails. ¿Cómo puedo permitir que un usuario agregue o elimine etiquetas (palabra clave simple) en la parte inferior de las imágenes?

Tendrá que configurar un modelo de Tag y luego establecer una asociación “muchos a muchos” entre el modelo de Image y el modelo de Tag configurando una tabla image_id con columnas image_id y tag_id , una vez que tenga eso, puede agregar las siguientes líneas a sus modelos para configurar las asociaciones:

class ImageTags

belong_to: imagen
belong_to: etiqueta

fin

Imagen de clase

has_many: image_tags
has_many: etiquetas, a través de:: image_tags

accept_nested_attributes_for: etiquetas

fin

etiqueta de clase

has_many: image_tags
has_many: imágenes, a través de:: image_tags

fin

Una vez que se configuran sus asociaciones, puede agregar un formulario anidado en su formulario de Imagen para las etiquetas (y / o algún tipo de esquema de selección si desea que el usuario pueda seleccionar etiquetas existentes) y configurar sus controladores adecuadamente para crear (o encontrar) esas etiquetas.

Puede ver los conceptos básicos en esta lección (la lección se basa en algunas lecciones anteriores, así que siéntase libre de navegar algunas lecciones antes y / o haga clic en los enlaces a la documentación relevante).