CoderFunda
  • Home
  • About us
    • Contact Us
    • Disclaimer
    • Privacy Policy
    • About us
  • Home
  • Php
  • HTML
  • CSS
  • JavaScript
    • JavaScript
    • Jquery
    • JqueryUI
    • Stock
  • SQL
  • Vue.Js
  • Python
  • Wordpress
  • C++
    • C++
    • C
  • Laravel
    • Laravel
      • Overview
      • Namespaces
      • Middleware
      • Routing
      • Configuration
      • Application Structure
      • Installation
    • Overview
  • DBMS
    • DBMS
      • PL/SQL
      • SQLite
      • MongoDB
      • Cassandra
      • MySQL
      • Oracle
      • CouchDB
      • Neo4j
      • DB2
      • Quiz
    • Overview
  • Entertainment
    • TV Series Update
    • Movie Review
    • Movie Review
  • More
    • Vue. Js
    • Php Question
    • Php Interview Question
    • Laravel Interview Question
    • SQL Interview Question
    • IAS Interview Question
    • PCS Interview Question
    • Technology
    • Other

02 March, 2023

Laravel Deleted Models Package

 Programing Coderfunda     March 02, 2023     Laravel, Packages, php     No comments   

 The Laravel Deleted Models package by Spatie automatically copies deleted models to a separate table:

According to Freek's writeup about the package, you can think of this package as a "recycle bin for models. The package achieves this through a database table called deleted_models and adding a KeepsDeletedModels trait to your models that you want to save backups of deleted models:

use Illuminate\Database\Eloquent\Model;
use Spatie\DeletedModels\Models\Concerns\KeepsDeletedModels;
 
class BlogPost extends Model
{
use KeepsDeletedModels;
}

This package can also attempt to restore deleted models using a few different methods:

// $blogPost will be restored and returned
$blogPost = BlogPost::restore(5);
 
// $blogPost will be returned, but it is not saved in the DB yet
$blogPost = Blogpost::makeRestored($id);
 
BlogPost::restoreQuietly(5);

You can also tap into the restore process with a Closure if you want to modify the model during the restoration process. This package has other configuration options and considerations, like pruning the deleted models table on a schedule and how often that table is pruned.

You might wonder why you would use this package vs. the built-in soft deletes feature in Laravel core. Freek Van der Herten's writeup does an excellent job of comparing the tradeoffs of both approaches.

In summary, here are some pros and cons of soft deletes:

  • ➕ Soft deletes is very convenient
  • ➕ No data copying needed when "deleting" a model
  • ➕ Deleted records benefit from any future alterations to the table schema
  • ➕ You must keep soft deletes in mind when querying the database (i.e., scope where deleted_at=null)
  • ➖ Referential integrity when soft deleting model associations, this must be done manually
  • ➖ Undelete can be complex when restoring a model (and related models)

And according to Freek, here are some pros and cons of using a separate deleted models table:

  • ➕ No need to adjust queries to account for deleted_at=null
  • ➕ The database can protect referential integrity—deleting a record will also delete all associated records
  • ➕ Easy to permanently delete old data
  • ➖ Harder to restore deleted data as you must copy it back (vs. setting the deleted_at=null to restore a model with simple soft deletes)

You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

Run Multiple Sail Apps Locally With Fleet

 Programing Coderfunda     March 02, 2023     Laravel, Packages, php     No comments   

 Laravel Fleet is a package by Andrew Schmelyun to run multiple Laravel Sail websites locally with custom domain names:

Laravel Sail uses Docker and Docker Compose to spin up containers that create a local development environment for your application.

By default, the containers are bound to the :80 port of your local machine. Spinning up a second application results in a failure due to port conflicts, but you can always adjust it so that the second app is available at something like :8081

Instead, Fleet provides a small set of commands that alter your docker-compose.yml file to provide support for Traefik, a reverse proxy that runs on a Docker container.

This package provides artisan commands to add Fleet support to an application. Once you install the Fleet package, you can add your application using the fleet:add command:

php artisan fleet:add
php artisan fleet:add my-app.localhost
./vendor/bin/sail up

And your application should be available using the domain provided. Using the fleet:stop Artisan command, you can stop all fleet-powered applications. Check out aschmelyun/fleet for complete setup instructions and documentation.

Andrew also has a YouTube video if you want a deeper dive into using Traefik to manage multiple sites with Docker Compose.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

Monitor CPU and Memory in Laravel Apps with Stethoscope

 Programing Coderfunda     March 02, 2023     Laravel, Packages, php     No comments   

 Laravel Stethoscope is a Laravel package to monitor CPU, memory, hard disk, web server, and network connection. You can use this package to provide configurable thresholds for CPU, memory, and hard disk space and continuously monitor those thresholds to trigger alerts.

The package's main features include the following:

  • Monitor CPU usage percentage
  • Monitor memory usage percentage
  • Monitor hard disk free space
  • Check network connection status
  • Check Nginx status
  • Record log when exceeding the consumption CPU, memory, and hard disk of thresholds
  • Record log when the network connection fails, or Nginx deactivated

This package comes with a few helpful artisan commands to quickly diagnose useful health metrics. For example, the listen command will show you the current stats for the configured metrics:

$ php artisan stethoscope:listen
2023-01-26 02:27:43
cpu usage ===> 0.00%
memory usage ===> 0.00%
network connection status ===> connected
web server status ===> web server status
hard disk free space ===> 46330949632 Byte (43.15 GB)

You can continuously monitor configured stats and run them on a cron using the monitor command:

$ php artisan stethoscope:monitor

This package is available on Composer, and the source code is in GitHub. It supports PHP 8+ and Laravel 8+. You can add it to your application with the following:

composer require mohsenabrishami/stethoscope
Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg

Simple Ad, Banner, and Callouts Manager for Laravel

 Programing Coderfunda     March 02, 2023     Laravel, Packages, php     No comments   

 Laravel Smart Ads is a simple Ad, Banner, and Callouts Manager for Laravel.

You can use this package to create ads and place them somewhere on your website with the provided JavaScript and Blade component:

<script src="{{ asset('vendor/smart-ads/js/smart-banner.js') }}"></script>
 
{{-- Manual placement --}}
<x-smart-ad-component slug="your-example-ad"/>

As you can see above, the <x-smart-ad-component/> lets you place an ad via a template. The second way the package allows you to place ads is the automatic route, which enables you to provide a CSS selector to where the ad should render in the DOM. This package also gives you a dashboard and tracks ad clicks by default.

You can get started with this package in your Laravel app by installing it via composer with the following:

composer require 5balloons/laravel-smart-ads

Check out laravel-smart-ads on GitHub for the source code and detailed instructions on using this package.

Read More
  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Newer Posts Older Posts Home

Meta

Popular Posts

  • Sitaare Zameen Par Full Movie Review
     Here’s a  complete Vue.js tutorial for beginners to master level , structured in a progressive and simple way. It covers all essential topi...
  • Credit card validation in laravel
      Validation rules for credit card using laravel-validation-rules/credit-card package in laravel Install package laravel-validation-rules/cr...
  • C++ in Hindi Introduction
    C ++ का परिचय C ++ एक ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग लैंग्वेज है। C ++ को Bjarne Stroustrup द्वारा विकसित किया गया था। C ++ में आने से पह...
  • Write API Integrations in Laravel and PHP Projects with Saloon
    Write API Integrations in Laravel and PHP Projects with Saloon Saloon  is a Laravel/PHP package that allows you to write your API integratio...
  • iOS 17 Force Screen Rotation not working on iPAD only
    I have followed all the links on Google and StackOverFlow, unfortunately, I could not find any reliable solution Specifically for iPad devic...

Categories

  • Ajax (26)
  • Bootstrap (30)
  • DBMS (42)
  • HTML (12)
  • HTML5 (45)
  • JavaScript (10)
  • Jquery (34)
  • Jquery UI (2)
  • JqueryUI (32)
  • Laravel (1017)
  • Laravel Tutorials (23)
  • Laravel-Question (6)
  • Magento (9)
  • Magento 2 (95)
  • MariaDB (1)
  • MySql Tutorial (2)
  • PHP-Interview-Questions (3)
  • Php Question (13)
  • Python (36)
  • RDBMS (13)
  • SQL Tutorial (79)
  • Vue.js Tutorial (69)
  • Wordpress (150)
  • Wordpress Theme (3)
  • codeigniter (108)
  • oops (4)
  • php (853)

Social Media Links

  • Follow on Twitter
  • Like on Facebook
  • Subscribe on Youtube
  • Follow on Instagram

Pages

  • Home
  • Contact Us
  • Privacy Policy
  • About us

Blog Archive

  • July (4)
  • September (100)
  • August (50)
  • July (56)
  • June (46)
  • May (59)
  • April (50)
  • March (60)
  • February (42)
  • January (53)
  • December (58)
  • November (61)
  • October (39)
  • September (36)
  • August (36)
  • July (34)
  • June (34)
  • May (36)
  • April (29)
  • March (82)
  • February (1)
  • January (8)
  • December (14)
  • November (41)
  • October (13)
  • September (5)
  • August (48)
  • July (9)
  • June (6)
  • May (119)
  • April (259)
  • March (122)
  • February (368)
  • January (33)
  • October (2)
  • July (11)
  • June (29)
  • May (25)
  • April (168)
  • March (93)
  • February (60)
  • January (28)
  • December (195)
  • November (24)
  • October (40)
  • September (55)
  • August (6)
  • July (48)
  • May (2)
  • January (2)
  • July (6)
  • June (6)
  • February (17)
  • January (69)
  • December (122)
  • November (56)
  • October (92)
  • September (76)
  • August (6)

Loading...

Laravel News

Loading...

Copyright © CoderFunda | Powered by Blogger
Design by Coderfunda | Blogger Theme by Coderfunda | Distributed By Coderfunda