quelle est la méthode de mise à jour dans laravel 5.4 crud?
je viens d'essayer de crud système. pour que contrôleur en fonction de mémorisation mon code est
public function store(Request $request)
{
Article::create([
'user_id' => auth()->id(),
'content' => $request->content,
'live' => (boolean)$request->live,
'post_on' => $request->post_on
]);
return redirect('/articles');
}
il suffit de stocker des données, mais lorsque je veux modifier l'article & enregistrer à nouveau, puis ce sera ma fonction d'édition de code? je n'ai aucune idée. je tente même code en fonction edit & c'est de créer un nouvel article pas de mise à jour. donc, ce sera bon code pour la fonction d'édition? grâce
Bienvenue sur StackOverflow! Nous serons heureux de vous aider si vous êtes coincé sur un problème de programmation, mais nous ne sommes pas ici pour écrire le code pour vous. Merci de voir Comment puis-je poser une bonne question? et Quels sont les sujets que pouvez-vous nous parler ici?.
OriginalL'auteur Masum | 2017-04-25
Vous devez vous connecter pour publier un commentaire.
Contrôleur de ressources de la méthode de mise à jour est
update()
. Éloquent méthode pourupdate()
estupdate()
trop, de sorte que vous pouvez le faire:Vous pouvez également utiliser le même contrôleur et Éloquent méthode pour les deux crerate et mise à jour des données
updateOrCreate()
méthode.fill()
méthode n'est pas de mise à jour des données, il n'a qu'à remplir les attributs. Utilisation$article->save();
aprèsfill()
ou de l'utilisationupdate()
comme je l'ai montré.il shwos cette erreur SQLSTATE[42S22]: Colonne qui n'a pas trouvé: 1054 Unknown column '_method' in 'field list' (SQL: mise à jour
articles
ensemble_method
= METTRE,_token
= l1ZyYVMAQJCAU6mzVXFEYqt2hUSQyAkqws9804aj,content
= sadfasdf,post_on
= 2017-04-25T03:43,Create_Post
= Submit,updated_at
= 2017-04-25 15:48:20 oùid
= 13)par la méthode de remplissage, il n'affiche aucune erreur mais il n'est pas mis à jour de données
montrer surveillé et à remplir des tableaux à partir de l'Article de modèle, s'il vous plaît. Ou tout simplement faire ce
->fill($request->except(['_method', '_token']))
Merci à tous . j'ai eu la solution & $article = Article::find($id); $article->update($request->tous les()); merci à tous de me soutenir
OriginalL'auteur Alexey Mezenin
vous pouvez utiliser
assurez-vous que vous l'ajouter à Vos attributs de colonne $tableau à remplir dans Votre modèle
OriginalL'auteur Mortada Jafar
Vous pouvez également mettre à jour le format de l'objet de ce genre.
OriginalL'auteur Sami
OriginalL'auteur Abu Sufian
C'est mieux si il y a une explication dans votre réponse sur ce code que vous avez écrit.
OriginalL'auteur user9913328
Si vous générer automatiquement le contrôleur de ressources pour un Modèle spécifique à l'aide
php artisan make:model -a Artical
ensuite, vous avez laupdate()
fonction comme ci-dessous:Ici, Lavarel récupérer automatiquement les
Article
objet dans$article
. Ainsi, vous pouvez économiser de l'$request
de données comme ci-dessous:OriginalL'auteur Mahmudul Hasan Shohag
Tout d'abord, vous avez deux actions de droit, la création et la mise à jour, donc, pour un réel crud dans laravel vous pourriez avoir ces deux dans un coin de la logique des méthodes de la
store()
etupdate()
:Vous définissez vos itinéraires avec
POST
pour la création et laPUT
à mettre à jour, alors que vous faites un bon crud des ressources.Je vous recommande de séparer les créer une logique hors de la logique de mise à jour et si vous avez une sorte de unique de données, alors vous devez valider sa valeur avant de créer une nouvelle ressource.
OriginalL'auteur Adriano Rosa
OriginalL'auteur rashedcs