PHP MySQL

Actualización del contenido de ejemplo en producción con migraciones en devlog-ist/landing

Introducción

Este post describe cómo se añadió una migración para actualizar el contenido de ejemplo de una publicación viral en producción para el proyecto devlog-ist/landing. El proyecto devlog-ist/landing es [Descripción del proyecto - SI ESTÁ DISPONIBLE]. La migración inicial ya se había ejecutado, por lo que se requirió una migración UPDATE separada para reemplazar el contenido del marcador de posición TDD con el contenido real de la publicación viral.

El problema

Después de la ejecución inicial de la migración de seed, el contenido de la publicación viral en producción seguía siendo un marcador de posición. Era necesario actualizar este contenido con los datos reales.

La solución

Se creó una nueva migración para realizar una operación UPDATE directamente en la base de datos. Esta migración reemplaza el contenido del marcador de posición con el contenido de la publicación viral real.

use Illuminate\Database\Migrations\Migration;
use Illuminate\Support\Facades\DB;

class UpdateViralPostContent extends Migration
{
    public function up()
    {
        DB::table('posts')
            ->where('slug', 'ejemplo-de-post-viral')
            ->update(['content' => 'Contenido real de la publicación viral']);
    }

    public function down()
    {
        DB::table('posts')
            ->where('slug', 'ejemplo-de-post-viral')
            ->update(['content' => 'Contenido de marcador de posición']);
    }
}

El método up actualiza el contenido de la publicación con el slug 'ejemplo-de-post-viral' con el contenido real. El método down revierte esta operación, restableciendo el contenido al marcador de posición.

Resultados

Tras la ejecución de la migración, el contenido de la publicación viral en el entorno de producción se actualizó correctamente. Esto garantiza que los usuarios vean el contenido correcto al acceder a la publicación.

Próximos pasos

Considerar la posibilidad de crear un comando Artisan para realizar este tipo de actualizaciones de contenido en el futuro. Esto podría simplificar el proceso y hacerlo más fácil de gestionar.

Actualización del contenido de ejemplo en producción con migraciones en devlog-ist/landing
Gerardo Ruiz

Gerardo Ruiz

Author

Share: