Los alcances globales son un concepto vital en Laravel, que permite la reutilización de las condiciones de Eloquent en toda su aplicación. Al implementar Global Scopes, puede aplicar condiciones específicas a consultas en todos los modelos, promoviendo la reutilización y la coherencia del código. Por el contrario, los ámbitos locales se limitan a un único modelo. En este tutorial, nos centraremos en la creación y utilización de ámbitos globales en Laravel.
where('is_active', '=', '1'); //or we can write $builder->whereIsActive('1'); } }
Después de agregar ActiveScope en el modelo, User::all() generará el siguiente SQL.
select * from `users` where `is_active` = '1'Puede haber escenarios en los que desee recuperar todos los datos sin aplicar el alcance global. En Laravel, puedes omitir un alcance global y recuperar todos los datos usando el método withoutGlobalScope.
User::withoutGlobalScope(ActiveScope::class)->get();Si desea eliminar varios o todos los alcances globales aplicados a un modelo, puede usar el método withoutGlobalScopes en Laravel. Este método le permite omitir todos los ámbitos globales o especificar los que desea eliminar. Aquí tienes un ejemplo:
// Remove all of the global scopes... User::withoutGlobalScopes()->get();// Remove some of the global scopes... User::withoutGlobalScopes([ ActiveScope::class, AgeScope::class ])->get();Y si te encanta el contenido y quieres apoyar más artículos increíbles, ¡considera invitarme a un café! ☕️? Su apoyo significa mucho para mí y ayuda a que el conocimiento siga fluyendo. Puedes hacerlo aquí mismo: ? Cómprame un café
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3