El comando tinker de Artisan es una excelente manera de modificar su aplicación en la terminal. Desafortunadamente, ejecutar algunas líneas de código, realizar ediciones y copiar y pegar código puede resultar molesto. ¿No sería genial jugar con el navegador?
Este paquete agregará una ruta a su aplicación donde podrá modificar el contenido de su corazón.
En caso de que la luz te dañe los ojos, también hay un modo oscuro.
Invertimos muchos recursos en la creación de los mejores paquetes de código abierto. Puedes apoyarnos comprando uno de nuestros productos pagos.
Agradecemos mucho que nos envíe una postal desde su ciudad natal, mencionando cuál de nuestros paquetes está utilizando. Encontrarás nuestra dirección en nuestra página de contacto. Publicamos todas las postales recibidas en nuestro muro virtual de postales.
Este paquete puede ejecutar código arbitrario. A menos que sepa lo que está haciendo, nunca debe instalarlo ni utilizarlo en un entorno de producción ni en ningún entorno donde maneje datos del mundo real.
Puede instalar el paquete a través del compositor:
composer require spatie/laravel-web-tinker --dev
A continuación, debe publicar los recursos de este paquete ejecutando este comando.
php artisan web-tinker:install
Opcionalmente, puede publicar el archivo de configuración del paquete.
php artisan vendor:publish --provider= " SpatieWebTinkerWebTinkerServiceProvider " --tag= " config "
Este es el contenido que se publicará en config/web-tinker.php
return [
/*
* The web tinker page will be available on this path.
*/
' path ' => ' /tinker ' ,
/*
* Possible values are 'auto', 'light' and 'dark'.
*/
' theme ' => ' auto ' ,
/*
* By default this package will only run in local development.
* Do not change this, unless you know what your are doing.
*/
' enabled ' => env ( ' APP_ENV ' ) === ' local ' ,
/*
* This class can modify the output returned by Tinker. You can replace this with
* any class that implements SpatieWebTinkerOutputModifiersOutputModifier.
*/
' output_modifier ' => Spatie WebTinker OutputModifiers PrefixDateTime::class,
/*
* These middleware will be assigned to every WebTinker route, giving you the chance
* to add your own middlewares to this list or change any of the existing middleware.
*/
' middleware ' => [
Illuminate Cookie Middleware EncryptCookies::class,
Illuminate Session Middleware StartSession::class,
Spatie WebTinker Http Middleware Authorize::class,
],
/*
* If you want to fine-tune PsySH configuration specify
* configuration file name, relative to the root of your
* application directory.
*/
' config_file ' => env ( ' PSYSH_CONFIG ' , null ),
];
De forma predeterminada, este paquete solo se ejecutará en un entorno local.
Visita /tinker
en el entorno local de tu aplicación para ver la página de Tinker.
Si desea ejecutar esto en otro entorno (no lo recomendamos), debe realizar dos pasos.
viewWebTinker
. Un buen lugar para hacerlo es en AuthServiceProvider
que se envía con Laravel. public function boot ()
{
$ this -> registerPolicies ();
Gate:: define ( ' viewWebTinker ' , function ( $ user = null ) {
// return true if access to web tinker is allowed
});
}
enabled
en el archivo de configuración web-tinker
en true
. Puede modificar la salida de Tinker especificando un modificador de salida en la clave output_modifier
del archivo de configuración de web-tinker
. Un modificador de salida es cualquier clase que implemente SpatieWebTinkerOutputModifiersOutputModifier
.
Así es como se ve esa interfaz.
namespace Spatie WebTinker OutputModifiers ;
interface OutputModifier
{
public function modify ( string $ output = '' ): string ;
}
La instalación predeterminada de este paquete utilizará el modificador de salida PrefixDataTime
que antepone la salida de Tinker con la fecha y hora actual.
composer test
Consulte CHANGELOG para obtener más información sobre los cambios recientes.
Consulte CONTRIBUCIÓN para obtener más detalles.
Si encuentra un error relacionado con la seguridad, envíe un correo electrónico a [email protected] en lugar de utilizar el rastreador de problemas.
Este paquete se inspiró y utiliza código del paquete nova-tinker-tool de Marcel Pociot.
La Licencia MIT (MIT). Consulte el archivo de licencia para obtener más información.