Laravel 9: CRUD probleme de valeur NULL lors de creation
Profil bloqué -
Bonjour,
Je tente de développer un un projet avec laravel 9 et j'ai pour cela créé des CRUD pour chaque modèles mais je rencontre un problème lors de l'utilisation de celui-ci lors de la création de nouvelles entrées dans ma base de données Mysql : certaines colonnes affiche la valeur NULL.
Ma table Image:
CREATE TABLE IF NOT EXISTS `images` ( `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, `name` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, `path` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, `project_id` bigint(20) UNSIGNED DEFAULT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL, PRIMARY KEY (`id`), KEY `images_project_id_foreign` (`project_id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC;
Model:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Image extends Model
{
use HasFactory;
protected $fillable = [
'name', 'path','project_id'
];
}
Controlleur:
public function store(Request $request)
{
$projects = Project::all();
$images = Image::all();
$nametest=$request->image->getClientOriginalName();
$imageName = time().'.'.$request->image->extension();
$request->image->move(public_path('image'), $imageName);
$pathImg="/image/$imageName/";
$request->validate([
'name' => $imageName,
'path' => $pathImg,
]);
Image::create($request->all());
return view('gallery')
->with('success','You have successfully upload image.')
->with('image',$pathImg)
->with('images',$images)
->with('projects',$projects);
}
Mon formulaire:
<form method="POST" action="{{ route('image.store') }}" enctype="multipart/form-data">
@csrf
<input type="file" class="form-control" name="image" />
<input type="hidden" id="version" name="project_id" value="{{ $project->id }}" />
<button type="submit" class="btn btn-sm">Upload</button>
</form>
Les colonnes "name" et "path" sont celles qui affiche toujours une valeur Null.
- Laravel 9: CRUD probleme de valeur NULL lors de creation
- Internet explorer 9 - Télécharger - Navigateurs
- Filmora 9 - Télécharger - Montage & Édition
- Mediator 9 - Télécharger - Présentation
- Code ascii de 0 à 9 - Guide
- 9/14 sur 20 ✓ - Forum Loisirs / Divertissements
1 réponse
Bonjour*
Il est possible que vous rencontriez des problèmes avec les valeurs null lors de la création ou de la mise à jour de données avec Laravel 9. La première chose à vérifier est de vous assurer que vous avez correctement configuré votre modèle pour accepter les valeurs null. Vous pouvez le faire en ajoutant la ligne suivante à votre modèle:
protected $nullable = ['field_name'];
Cela vous permettra d'accepter des valeurs null pour le champ spécifié. Vous devrez peut-être également vérifier que les valeurs par défaut sont correctement configurées pour les champs qui peuvent être null
(*) Élément basique de politesse ajouté par la modération CCM !...................................