0
votes

Mettez à jour l'enregistrement du modèle associé à Laravel

Comment mettre à jour un enregistrement dans le modèle de table associé par expression de chaîne?

C'est ce que je fais actuellement (et ça marche) xxx

mais puis-je faire ce qui précède d'une manière plus élégante, telle que? xxx

mon modèle utilisateur xxx


5 commentaires

Je pense que votre approche est plutôt bonne


Être un nerd, j'espérais qu'il y a un moyen plus pratique de le faire


Eh bien, vous pouvez le faire aussi sur une ligne: Utilisateur :: Trouver (1) -> Jeton () -> Mise à jour (['Token' => $ NEW_TOKN]);


Je l'accepterais comme une réponse correcte parce que je l'aime


J'ai élaboré un peu plus comme une réponse


3 Réponses :


0
votes
$user = User::with('token')->findOrFail(1);
$user->token->update(['token' => $request->token]);

0 commentaires

2
votes

dans une ligne:

User::find(1)->token()->update(['token' => $new_token]);
  • L'utilisateur trouve la recherche pourrait revenir null code> si l'identifiant de l'utilisateur n'est pas trouvé. LI>
  • Les événements de modèle enregistrés et mis à jour ne seront pas tirés pour les modèles mis à jour. LI>
  • L'exécution de la méthode de mise à jour est Ne pas passer par le modèle éloquent méthodes. li> ul>

    Cependant, dans votre cas particulier, je pense qu'il est valide, spécialement si vous savez que l'ID utilisateur sera toujours valide. P> P>


0 commentaires

1
votes

Yo peut le faire comme ceci: xxx pré>

ou strong> en vous app \ jeton code> classe comme ceci: p >

public function update_token(string $new_token)
{
      $this->update(['token'=>$new_token]);
}


0 commentaires