Pokedex: Actualizar Laravel 버전 8.x ~ 9.x

Hace un año estuve realizando algunas publicaciones, las cuales hacen reference a Laravel, en dichas publicaciones construimos un "Pokedex"desde 0.

Estas publicaciones se pueden Consultar en el siguiente enlace:

Pokedex con Laravel

Ahora que ha pasado este periodo de tiempo, me prouse a actualizar el proyecto, el cual contaba con la version de Laravel 8.x, por tal motivo, el requerimiento principal, será actualizar a la versión mas reciente.
De igual forma, estarémos actualizando a la version 8.1 de PHP.

Cuando se escribió este articulo, la versión mas actual de Laravel es la 9.27 con versión mínima de PHP, que es la 8.0.


전제 조건



Para poder hacer esta actualización se debe tener instalado lo siguiente:
  • PHP 8.1
  • Ubuntu 20.04 또는 WSL2 및 Windows
  • 작곡가
  • 힘내

  • 프리메로스 파소



    Antes de continuar, les recomiendo que sigan la guía de instalación que tiene Laravel para cuando liberan las versiones, en este caso fue de 8 a 9, les dejo el link:

    Upgrade Guide Laravel From 8.x to 9.x

    Si actualmente no usas tantos paquetes, en esa guía simplemente van a llegar al paso que dice "Upgrade Dependencies", en caso contrario, les recomiendo unaauditía exhaustiva con los paquetes que usan y revisar los repositorios de los mismos, para ver si tienen versiones Para Laravel 9 en este caso.

    설치



    Siguiendo estas recomendaciones; el "Pokedex"no usa paquetes externos, es un proyecto sencillo que nos da una inducción a Laravel, por lo cual vamos a codificar, y lo primero que vamos realizar es la modificación del archivo "composer.json".

    Sustituimos con lo siguiente en la sección de "require"del archivo:

    "require": {
            "php": "^8.0||^8.1",
            "fruitcake/laravel-cors": "^v2.0.5",
            "guzzlehttp/guzzle": "^7.5.0",
            "laravel/framework": "^v9.27.0",
            "laravel/tinker": "^v2.7.2",
            "laravel/ui": "^3.3"
        },
    
    


    Si ponemos atención a la diferencia, solamente actualizamos versiones y quitamos un paquete llamado "fideloper/proxy", mas adelante sabremos porqué eliminamos esta librería.

    "require-dev"에 대한 수정 사항:

    "require-dev": {
            "spatie/laravel-ignition": "^1.4.0",
            "fakerphp/faker": "^1.9.1",
            "laravel/sail": "^1.0.1",
            "mockery/mockery": "^1.4.4",
            "nunomaduro/collision": "^v6.2.1",
            "phpunit/phpunit": "^9.5.24"
        },
    
    


    그 중 일부는 "facade/ignition"또는 "spatie/laravel-ignition"으로 실제 버전을 유지합니다.

    "composer.json"아카이브를 수정한 후 "composer.lock"아카이브를 수정하면 버전 8에서 설치 오류가 발생할 수 있습니다.

    Después de borrar el archivo "composer.lock"ejecutamos el siguiente comando:

    composer install
    


    Javascript에 의존하는 설치 프로그램:

    npm install
    


    Laravel 구성 문서의 Copiamos el archivo de Laravel:

    cp .env.example .env
    


    Probamos que sirva la configuración:

    php artisan key:generate
    


    Test en browser de la installación



    Aunque de cierta manera nos sirva el comando "artisan"después de configurar la version de Laravel, tendremos que probar que todo nuestro 새로운 Pokedex se ejecute sin errores en el browser.

    Para esto utilizaremos "Laravel Sail", la configuración como tal no la mencionaré aquí, ya que previamente en las publicaciones del "Pokedex"se mostro como se configura; Solamente configuraremos el servicio de MariaDb.

    Pokedex encontrar la publicación de Pokedex con Sail aquí:

    The Pokedex Project — Desplegando nuestro ambiente de desarrollo con Laravel Sail(2)

    Una vez configurado, levantamos los servicios de Sail:

    sail up -d
    


    En este caso, se uso un alias para ejecutar el comando de Sail, recordemos que se encuentra en vendor/bin



    Probamos que los servicios se hayan levantado correctamente:

    sail ps
    


    Ya con los servicios levantados, abrimos nuestro browser y ponemos el localhost que nos indica el comando anterior y nos arrojará un error:



    버전 9에서 "fideloper/proxy"를 사용하고 Laravel의 핵심 라이브러리에서 "Illuminate/Http/Middleware/TrustProxies"를 사용할 수 있습니다.

    Entonces, para que ya no arroje dicho error, modificaremos el archive TrustProxies.php, el cual se encuentra en la carpeta de Middleware con lo siguiente:

    <?php
    
    namespace App\Http\Middleware;
    
    use Illuminate\Http\Middleware\TrustProxies as Middleware;
    
    


    Realizando estos cambios, probamos de nuestro en nuestro browser y tendremos el "Pokedex"con la version mas reciente de Laravel:



    Los cambios que se realizaron en esta publicación, los puedes encontrar en el siguiente PR:

    https://github.com/krsrk/pokedex-laravel/pull/3

    좋은 웹페이지 즐겨찾기