Siguiendo con los tutoriales de Codeigniter, ahora el ejemplo es con una conexión usando PostgreSQL. No voy a explicar las conexiones, o consultas, ya que todo eso se delega al framework, de tal forma que en eso no hay cambios, son consultas que se van armando, y codeigniter se encarga de realizarlas a la base de datos que se configure, lo que sí explicaré un poco más, es sobre la configuración que se tiene que realizar para poder utilizar Postgresql con Codeigniter 4.
La instalación de PostgreSQL no la explicaré aquí, sino en otro tutorial que tengo
https://blog.linuxitos.com/instalar-postgresql-12-fedora-31
Instalación de XAMPP en Fedora https://blog.linuxitos.com/instalar-xampp-7-4-5-fedora-32
Previo a descargar el proyecto con PostgreSQL, es necesario realizar la siguiente configuración en XAMPP
sudo gedit /opt/lampp/etc/php.ini
Se busca la línea ;extension="pgsql.so" y se descomenta:
extension=php_pdo_pgsql.dll extension=php_pgsql.dll extension="pgsql.so"
El proyecto lo subí a gitlab, así que ahí lo pueden descargar:
https://gitlab.com/ferm/codeigniter4-tutorials-postgresql
Una vez descargado el proyecto de GitLab, se monta sobre htdocs dentro del directorio de XAMPP, el cual está en /opt/lampp/htdocs/
Abrir la terminal y entrar a la ruta de /opt/lampp/htdocs/
sudo chown -R daemon:tu-usuario codeigniter4-tutorials-postgresql
sudo chmod -R 775 codeigniter4-tutorials-postgresql
sudo chmod 777 -R codeigniter4-tutorials-postgresql/writable
Si el cambiaron el nombre al proyecto, entones cambiarlo aquí también, o bien su nombre de usuario.
En éste caso, se usa pgamin 3 para conectarse al servidor de postgresql, sin embargo, si quieren usar otro, no hay problema. O bien pueden crearla de manera manual, el script está en el proyecto.
Abrir pgadmin, crear una conexión una base de datos, y restaurarla desde el archivo que está en el proyecto.
Hay dos archivos solamente que son necesarios modificar:
Éste archivo contiene la url del proyecto, encriptación, contraseñas de las bases de datos, etc.
Sólo modificamos la url del proyecto, y la base de datos, lo demás lo dejo a su consideración, además, debo mencionar que éste proyecto está configurado en modo development.
En el archivo .env se modifican los siguientes accesos que correspondan a la configuración del servidor de postgresql que estén usando
#-------------------------------------------------------------------- # DATABASE #-------------------------------------------------------------------- database.default.hostname =localhost database.default.database =ci_ajax_pagination database.default.username =postgres database.default.password = database.default.DBDriver =Postgre database.default.port =5432
Aquí se modifca la url del proyecto, nombre, etc.
public $baseURL = 'http://localhost/devs/ci4_postgresql_tutorials/';
Archivo app/Config/Database.php
Se modifican los parámetros de acuerdo a la configuración del servidor de postgresql que estén utilizando
public $default = [ 'DSN' => 'pgsql:host=localhost;port=5432;dbname=ci_ajax_pagination;user=user;password=password', //'DSN' => '', 'hostname' => 'localhost', 'username' => '', 'password' => '', 'database' => 'ci_ajax_pagination', 'DBDriver' => 'Postgre', 'DBPrefix' => '', 'pConnect' => false, 'DBDebug' => (ENVIRONMENT !== 'production'), 'cacheOn' => false, 'cacheDir' => '', /*'charset' => 'latin1', 'DBCollat' => 'latin1_swedish_ci',*/ 'charset' => 'utf8', 'DBCollat' => 'utf8_general_ci', 'swapPre' => '', 'encrypt' => false, 'compress' => false, 'strictOn' => false, 'failover' => [], 'port' => 5432, ];
Una vez realizado todos esos cambios, ahora abrir la url del proyecto en el navegador http://localhost/codeigniter4-tutorials-postgresql/
En el gif de ejemplo, es otra url, pero eso simplemente es porque tengo muchos proyecto de ejemplos, y por comodidad los he agrupado en una directorio llamado devs.
Y eso sería todo, si tienen alguna duda, o comentario, por favor dejarlo aquí abajo.
Anthony Moreno
hace 3 años