1657659600
Dans ce guide complet, vous apprendrez à créer un système de balises dans l'application Laravel à l'aide du package laravel-tagging.
Non seulement mais aussi, nous expliquerons petit à petit comment construire un système de marquage robuste dans l'application laravel à partir de zéro.
Comprenons pourquoi le marquage est essentiel ; dans les applications Web, le marquage profite aux utilisateurs en découvrant du contenu lié à leurs centres d'intérêt.
Les balises sont des mots-clés associés corrélés ou attribués à une information. Les balises sont généralement utilisées sur les sites Web sociaux, les sites Web personnels et les blogs ; si vous créez l'un des sites, vous devez implémenter le système de balises dans votre application.
Si vous avez déjà utilisé un système de blogging wordpress, vous devez avoir vu que le balisage est la fonctionnalité intégrée commune.
Laravel n'est pas livré avec un système de balises ; par conséquent, nous allons vous montrer comment créer un système de balises simple dans laravel, et cela vous aidera à générer des balises dans laravel si rapidement.
Nous supposons que vous avez déjà téléchargé et configuré PHP et Composer sur votre système.
Exécutez la commande pour créer une nouvelle application Laravel.
composer create-project --prefer-dist laravel/laravel laravel-demo
Accédez à la racine du projet.
cd laravel-demo
La base de données est connectée à l'application en ajoutant les détails de la base de données dans les fichiers de configuration .env .
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database_name
DB_USERNAME=database_user_name
DB_PASSWORD=database_password
Ensuite, ouvrez le terminal et ajoutez la commande pour installer le package de marquage laravel ; ce package offre la prise en charge des balises pour les modèles Laravel Eloquent de manière imprudente.
composer require rtconner/laravel-tagging
Vous avez maintenant installé le package de marquage, ce n'est que la pointe de l'iceberg. Dans l'étape suivante, vous devez enregistrer le plugin de marquage dans l'application laravel.
Sans plus tarder, ouvrez le fichier app/config/app.php et enregistrez la classe TaggingServiceProvider dans le tableau providers.
....
....
'providers' => [
....
....
\Conner\Tagging\Providers\TaggingServiceProvider::class,
....
....
]
Maintenant, vous devrez exécuter la commande ci-dessous pour publier le tagging.php dans laravel.
php artisan vendor:publish --provider="Conner\Tagging\Providers\TaggingServiceProvider"
Ensuite, vous devez exécuter une commande pour exécuter la migration du système de balises, et cela générera des tables de balisage dans la base de données.
php artisan migrate
Dans cette étape, vous devez générer des fichiers de modèle et de migration. Cela peut être fait en utilisant une seule commande, donc exécutez la commande suivante.
php artisan make:model Post -m
Après avoir exécuté la commande suggérée, de nouveaux fichiers de modèle et de migration ont été générés et vous allez ajouter des valeurs dans ces fichiers pour créer une table dans la base de données.
Mettre à jour le code dans le fichier app/Models/Post.php .
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
use HasFactory;
use \Conner\Tagging\Taggable;
protected $fillable = [
'title_name',
'content'
];
}
Maintenant, allez dans app/database/migrations/create_posts_table.php et vous devez insérer les valeurs de la table dans ce fichier de migration.
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreatePostsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title_name');
$table->text('content');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('posts');
}
}
Par conséquent, vous devez exécuter une commande pour exécuter les migrations.
php artisan migrate
Un contrôleur est une classe unique dans laquelle vous conjuguez des fonctions importantes pour effectuer diverses tâches.
Générons un nouveau contrôleur à l'aide de la commande suivante.
php artisan make:controller PostController
De plus, vous devez ouvrir le app/Http/Controllers/PostController.php et mettre à jour le fichier avec le code donné.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Post;
class PostController extends Controller
{
public function index()
{
$posts = Post::all();
return view('index', compact('posts'));
}
public function store(Request $request)
{
$this->validate($request, [
'title_name' => 'required',
'content' => 'required',
'tags' => 'required',
]);
$input = $request->all();
$tags = explode(",", $request->tags);
$post = Post::create($input);
$post->tag($tags);
return back()->with('success','Post added to database.');
}
}
Ensuite, ajoutez les deux routes dans le fichier routes/web.php ; ces méthodes de route permettent d'invoquer les requêtes GET et POST.
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PostController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/show-post', [PostController::class, 'index']);
Route::post('/create-post', [PostController::class, 'store']);
Dans la dernière étape, vous devez configurer la vue et intégrer le système de marquage dans laravel à l'aide du bootstrap CSS et de l'entrée de balise js.
Ouvrez le dossier resources/views ici ; vous devez créer le fichier index.blade.php et mettre à jour le code suivant dans le fichier.
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Laravel 8 Tags System Example</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tagsinput/0.8.0/bootstrap-tagsinput.css"
rel="stylesheet" />
<style>
.bootstrap-tagsinput .tag {
margin-right: 2px;
color: #ffffff;
background: #2196f3;
padding: 3px 7px;
border-radius: 3px;
}
.bootstrap-tagsinput {
width: 100%;
}
</style>
</head>
<body class="bg-dark">
<div class="container">
<h1>Add post</h1>
@if(Session::has('success'))
<div class="alert alert-success">
{{ Session::get('success') }}
@php
Session::forget('success');
@endphp
</div>
@endif
<form action="{{ url('create-post') }}" method="POST">
{{ csrf_field() }}
<div class="mb-3">
<input type="text" class="form-control" name="title_name" placeholder="Enter title">
@if ($errors->has('title_name'))
<span class="text-danger">{{ $errors->first('<title></title>') }}</span>
@endif
</div>
<div class="mb-3">
<textarea class="form-control" name="content" placeholder="Enter content"></textarea>
@if ($errors->has('content'))
<span class="text-danger">{{ $errors->first('content') }}</span>
@endif
</div>
<div class="mb-3">
<input class="form-control" type="text" data-role="tagsinput" name="tags">
@if ($errors->has('tags'))
<span class="text-danger">{{ $errors->first('tags') }}</span>
@endif
</div>
<div class="d-grid">
<button class="btn btn-info btn-submit">Submit</button>
</div>
</form>
<div class="alert alert-primary mt-5 text-center">
Post Collection
</div>
@if($posts->count())
@foreach($posts as $key => $post)
<h3>{{ $post->title_name }}</h3>
<p>{{ $post->content }}</p>
<div>
<strong>Tag:</strong>
@foreach($post->tags as $tag)
<label class="label label-info">{{ $tag->name }}</label>
@endforeach
</div>
@endforeach
@endif
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tagsinput/0.8.0/bootstrap-tagsinput.js"></script>
</body>
</html>
Dans la dernière étape, vous devez exécuter le serveur de développement d'applications laravel à l'aide de la commande php artisan.
php artisan serve
Ouvrez ensuite le navigateur et utilisez l'URL pour tester l'application.
http://127.0.0.1:8000/show-post
Dans ce tutoriel, nous avons expliqué comment générer des balises dans l'application laravel. Pour construire le système de balises dynamiques, nous avons utilisé le plugin laravel-tagging en utilisant l'outil de ligne de commande composer.
Nous avons gardé l'exemple des balises laravel subtil et simple. Vos utilisateurs auront désormais la liberté de sélectionner les balises car cette fonctionnalité permet aux utilisateurs de rechercher les données instantanément.
Source : https://www.positronx.io/laravel-bootstrap-tags-system-example-tutorial/
1657659600
Dans ce guide complet, vous apprendrez à créer un système de balises dans l'application Laravel à l'aide du package laravel-tagging.
Non seulement mais aussi, nous expliquerons petit à petit comment construire un système de marquage robuste dans l'application laravel à partir de zéro.
Comprenons pourquoi le marquage est essentiel ; dans les applications Web, le marquage profite aux utilisateurs en découvrant du contenu lié à leurs centres d'intérêt.
Les balises sont des mots-clés associés corrélés ou attribués à une information. Les balises sont généralement utilisées sur les sites Web sociaux, les sites Web personnels et les blogs ; si vous créez l'un des sites, vous devez implémenter le système de balises dans votre application.
Si vous avez déjà utilisé un système de blogging wordpress, vous devez avoir vu que le balisage est la fonctionnalité intégrée commune.
Laravel n'est pas livré avec un système de balises ; par conséquent, nous allons vous montrer comment créer un système de balises simple dans laravel, et cela vous aidera à générer des balises dans laravel si rapidement.
Nous supposons que vous avez déjà téléchargé et configuré PHP et Composer sur votre système.
Exécutez la commande pour créer une nouvelle application Laravel.
composer create-project --prefer-dist laravel/laravel laravel-demo
Accédez à la racine du projet.
cd laravel-demo
La base de données est connectée à l'application en ajoutant les détails de la base de données dans les fichiers de configuration .env .
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database_name
DB_USERNAME=database_user_name
DB_PASSWORD=database_password
Ensuite, ouvrez le terminal et ajoutez la commande pour installer le package de marquage laravel ; ce package offre la prise en charge des balises pour les modèles Laravel Eloquent de manière imprudente.
composer require rtconner/laravel-tagging
Vous avez maintenant installé le package de marquage, ce n'est que la pointe de l'iceberg. Dans l'étape suivante, vous devez enregistrer le plugin de marquage dans l'application laravel.
Sans plus tarder, ouvrez le fichier app/config/app.php et enregistrez la classe TaggingServiceProvider dans le tableau providers.
....
....
'providers' => [
....
....
\Conner\Tagging\Providers\TaggingServiceProvider::class,
....
....
]
Maintenant, vous devrez exécuter la commande ci-dessous pour publier le tagging.php dans laravel.
php artisan vendor:publish --provider="Conner\Tagging\Providers\TaggingServiceProvider"
Ensuite, vous devez exécuter une commande pour exécuter la migration du système de balises, et cela générera des tables de balisage dans la base de données.
php artisan migrate
Dans cette étape, vous devez générer des fichiers de modèle et de migration. Cela peut être fait en utilisant une seule commande, donc exécutez la commande suivante.
php artisan make:model Post -m
Après avoir exécuté la commande suggérée, de nouveaux fichiers de modèle et de migration ont été générés et vous allez ajouter des valeurs dans ces fichiers pour créer une table dans la base de données.
Mettre à jour le code dans le fichier app/Models/Post.php .
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
use HasFactory;
use \Conner\Tagging\Taggable;
protected $fillable = [
'title_name',
'content'
];
}
Maintenant, allez dans app/database/migrations/create_posts_table.php et vous devez insérer les valeurs de la table dans ce fichier de migration.
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreatePostsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title_name');
$table->text('content');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('posts');
}
}
Par conséquent, vous devez exécuter une commande pour exécuter les migrations.
php artisan migrate
Un contrôleur est une classe unique dans laquelle vous conjuguez des fonctions importantes pour effectuer diverses tâches.
Générons un nouveau contrôleur à l'aide de la commande suivante.
php artisan make:controller PostController
De plus, vous devez ouvrir le app/Http/Controllers/PostController.php et mettre à jour le fichier avec le code donné.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Post;
class PostController extends Controller
{
public function index()
{
$posts = Post::all();
return view('index', compact('posts'));
}
public function store(Request $request)
{
$this->validate($request, [
'title_name' => 'required',
'content' => 'required',
'tags' => 'required',
]);
$input = $request->all();
$tags = explode(",", $request->tags);
$post = Post::create($input);
$post->tag($tags);
return back()->with('success','Post added to database.');
}
}
Ensuite, ajoutez les deux routes dans le fichier routes/web.php ; ces méthodes de route permettent d'invoquer les requêtes GET et POST.
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PostController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/show-post', [PostController::class, 'index']);
Route::post('/create-post', [PostController::class, 'store']);
Dans la dernière étape, vous devez configurer la vue et intégrer le système de marquage dans laravel à l'aide du bootstrap CSS et de l'entrée de balise js.
Ouvrez le dossier resources/views ici ; vous devez créer le fichier index.blade.php et mettre à jour le code suivant dans le fichier.
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Laravel 8 Tags System Example</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tagsinput/0.8.0/bootstrap-tagsinput.css"
rel="stylesheet" />
<style>
.bootstrap-tagsinput .tag {
margin-right: 2px;
color: #ffffff;
background: #2196f3;
padding: 3px 7px;
border-radius: 3px;
}
.bootstrap-tagsinput {
width: 100%;
}
</style>
</head>
<body class="bg-dark">
<div class="container">
<h1>Add post</h1>
@if(Session::has('success'))
<div class="alert alert-success">
{{ Session::get('success') }}
@php
Session::forget('success');
@endphp
</div>
@endif
<form action="{{ url('create-post') }}" method="POST">
{{ csrf_field() }}
<div class="mb-3">
<input type="text" class="form-control" name="title_name" placeholder="Enter title">
@if ($errors->has('title_name'))
<span class="text-danger">{{ $errors->first('<title></title>') }}</span>
@endif
</div>
<div class="mb-3">
<textarea class="form-control" name="content" placeholder="Enter content"></textarea>
@if ($errors->has('content'))
<span class="text-danger">{{ $errors->first('content') }}</span>
@endif
</div>
<div class="mb-3">
<input class="form-control" type="text" data-role="tagsinput" name="tags">
@if ($errors->has('tags'))
<span class="text-danger">{{ $errors->first('tags') }}</span>
@endif
</div>
<div class="d-grid">
<button class="btn btn-info btn-submit">Submit</button>
</div>
</form>
<div class="alert alert-primary mt-5 text-center">
Post Collection
</div>
@if($posts->count())
@foreach($posts as $key => $post)
<h3>{{ $post->title_name }}</h3>
<p>{{ $post->content }}</p>
<div>
<strong>Tag:</strong>
@foreach($post->tags as $tag)
<label class="label label-info">{{ $tag->name }}</label>
@endforeach
</div>
@endforeach
@endif
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tagsinput/0.8.0/bootstrap-tagsinput.js"></script>
</body>
</html>
Dans la dernière étape, vous devez exécuter le serveur de développement d'applications laravel à l'aide de la commande php artisan.
php artisan serve
Ouvrez ensuite le navigateur et utilisez l'URL pour tester l'application.
http://127.0.0.1:8000/show-post
Dans ce tutoriel, nous avons expliqué comment générer des balises dans l'application laravel. Pour construire le système de balises dynamiques, nous avons utilisé le plugin laravel-tagging en utilisant l'outil de ligne de commande composer.
Nous avons gardé l'exemple des balises laravel subtil et simple. Vos utilisateurs auront désormais la liberté de sélectionner les balises car cette fonctionnalité permet aux utilisateurs de rechercher les données instantanément.
Source : https://www.positronx.io/laravel-bootstrap-tags-system-example-tutorial/
1595201363
First thing, we will need a table and i am creating products table for this example. So run the following query to create table.
CREATE TABLE `products` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
Next, we will need to insert some dummy records in this table that will be deleted.
INSERT INTO `products` (`name`, `description`) VALUES
('Test product 1', 'Product description example1'),
('Test product 2', 'Product description example2'),
('Test product 3', 'Product description example3'),
('Test product 4', 'Product description example4'),
('Test product 5', 'Product description example5');
Now we are redy to create a model corresponding to this products table. Here we will create Product model. So let’s create a model file Product.php file under app directory and put the code below.
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Product extends Model
{
protected $fillable = [
'name','description'
];
}
Now, in this second step we will create some routes to handle the request for this example. So opeen routes/web.php file and copy the routes as given below.
routes/web.php
Route::get('product', 'ProductController@index');
Route::delete('product/{id}', ['as'=>'product.destroy','uses'=>'ProductController@destroy']);
Route::delete('delete-multiple-product', ['as'=>'product.multiple-delete','uses'=>'ProductController@deleteMultiple']);
#laravel #delete multiple rows in laravel using ajax #laravel ajax delete #laravel ajax multiple checkbox delete #laravel delete multiple rows #laravel delete records using ajax #laravel multiple checkbox delete rows #laravel multiple delete
1621508419
Hire our expert team of Laravel app developers for flexible PHP applications across various cloud service providers.
With this easy build technology, we develop feature-rich apps that make your complex business process a lot easier. Our apps are,
Get your business a best in classlaravel app. Hire laravel app developers in India. We have the best organizational set-up to provide you the most advanced app development services.
#laravel app development company india #hire laravel developers india #laravel app development company #hire laravel developers #laravel development agency #laravel app programmers
1620633584
In SSMS, we many of may noticed System Databases under the Database Folder. But how many of us knows its purpose?. In this article lets discuss about the System Databases in SQL Server.
Fig. 1 System Databases
There are five system databases, these databases are created while installing SQL Server.
#sql server #master system database #model system database #msdb system database #sql server system databases #ssms #system database #system databases in sql server #tempdb system database
1670234150
In the present world, PHP is a well-liked framework. Laravel is one of the most well-known frameworks out there. The popularity of Laravel is due to its expressiveness, flexibility, good controllers, strength, seamless caching, and time savings when handling tasks like routing, authentication, sessions, and many more.
Laravel is a PHP framework that everyone who knows PHP should be familiar with. The Laravel PHP framework is simple to learn and use, but it is packed with useful features. Despite rising market competition, many developers consider Laravel to be one of the best PHP frameworks available.
WPWeb Infotech is a top Laravel development company in India and the US since 2015. They develop reliable, scalable Laravel web and mobile apps using Ajax-enabled widgets, MVC patterns, and built-in tools. WPWeb Infotech has top-notch expertise in combining a variety of front- and back-end technologies like Laravel + VueJS, Laravel + Angular, and Laravel + ReactJS to create scalable and secure web architectures, so you don't have to worry about scalability and flexibility while developing your product. They understand business scale and recommend technology that fits. Agile experts reduce web and mobile app development time and risk.
When it comes to hiring Laravel developers from India, they are the best choice because their Laravel developers can work according to your time zone to provide you with hassle-free, innovative, and straightforward web development solutions. Being the most trusted Laravel development company in India, they can help you reach new heights of success, unleashing the power of the Laravel PHP framework.
Partner with one of India’s best Laravel Development Company and get the most expertise in Laravel development.
#laravel #laravel-development #laravel-development-company #laravel-development-services #hire-laravel-developers