Dev: Make getInsertID() more consistent with save()
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 38/100
Línea de trabajo
Lee el hilo del foro y compara después el comportamiento de System Model en save(), insert(), update() y getInsertID(). Confirma la semántica prevista del ID afectado antes de cambiar nada; se considera terminado cuando save() expone de forma coherente el ID esperado tanto para la ruta de inserción como para la de actualización, con cobertura para cada ruta.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
PHP Version
8.2, 8.3
CodeIgniter4 Version
latest
CodeIgniter4 Installation Method
Composer (using codeigniter4/appstarter)
Which operating systems have you tested for this bug?
macOS, Linux
Which server did you use?
fpm-fcgi
Database
MaraiaDB
What happened?
Not exactly a bug, but not really a FR either. See this forum thread: https://forum.codeigniter.com/showthread.php?tid=91800&pid=421782#pid421782
Essentially I'm offering to PR a change to \System\Model::update() that would set an instance's $insertID property the same way \System\Model::insert() does so that the behaviour of save() is more consistent.
Currently \System\Model::getInsertID() only returns a value if a save() does an insert. The logic needed to handle that works against the elegance provided by save().
Steps to Reproduce
Use \System\Model::save()
Expected Output
Best case, \System\Model::getInsertID() will return the "affected ID" after \System\Model::save() regardless of which action occurred.
Anything else?
I'm stoked contribute to core, but I didn't want to spend the time on a PR if there is no desire to change this behaviour. Please advise.
I can write the update to the docs too if I'm pointed in the right direction to do so.
- Lenguaje dominante
- PHP
- Estrellas
- 6k
- Forks
- 2k
- Merge medio
- 1 d 22 h
- PR fusionados (30 d)
- 59
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de codeigniter4/CodeIgniter4
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
codeigniter4/CodeIgniter4#10616 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
codeigniter4/CodeIgniter4#10618 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 62/100
codeigniter4/CodeIgniter4#10617 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
codeigniter4/CodeIgniter4#10615 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
codeigniter4/CodeIgniter4#10589 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de codeigniter4/CodeIgniter4
Issues similares
-
sync-en
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 4 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Refund Analytics Tool — “Check” Button Fails to Render in WooCommerce 11.2.1Posiblemente ocupada @MinhazI la tomó hoy. AbiertoBug Reports/Analytics type: community contribution
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
woocommerce/woocommerce#69689 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 60/100
Los mantenedores suelen responder en 2 días