GithubHelp home page GithubHelp logo

jdw5 / laravel-prune-models Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 127 KB

Prunable trait on models to delete them from database, including using queues

Shell 0.54% PHP 61.18% JavaScript 1.01% Blade 10.17% CSS 0.03% Vue 27.08%

laravel-prune-models's Introduction

Key Files

Using Prunable Trait

  • Apply the use Prunable trait on a model
  • Generate the prunable method to return a builder applying conditions of which models to delete
  • pruning method is used to access the objects and apply methods on relations etc
  • Run using php artisan model:prune
    • This will prune all models, select specific models using the --model options
    • See all options with the --help flag

Prunable vs MassPrunable

  • Altneratively use the MassPrunable trait which will improve performance
  • Only Prunable trait allows for pruning method as it retrieves a collection chunk of the models in memory, allowing for relation accessing
  • Use MassPrunable when pruning method is not required as it has better performance
  • Effective difference is
    • Prunable: Model::get()->delete()
    • MassPrunable: Model::delete()

Notes

  • Prunable will also prune any soft delete models as it applies a force delete

laravel-prune-models's People

Contributors

jdw5 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.