Modèle itinéraire

Vous pouvez utiliser les méthodes Current, currentRouteName et currentRouteAction sur la façade route pour accéder aux informations sur l`itinéraire qui gère la demande entrante: le modèle DRC a été utile car il a également été fait pour imiter la dyslexie. La dyslexie de surface a été imitée en endommageant le lexique orthographique de sorte que le programme a fait plus d`erreurs sur des mots irréguliers que sur des mots réguliers ou non, tout comme on l`observe dans la dyslexie de surface. la dyslexie phonologique a été modélisée de façon similaire en endommageant sélectivement la route non lexicale, entraînant ainsi le programme à se prononcer sur des mots non-prononçants. Comme pour tout modèle, le modèle DRC a quelques limitations et une version plus récente est actuellement en cours de développement. [15] mais c`est à côté du point, la célébrité d`aujourd`hui est la liaison de modèle de route de Laravel. Bien que nous ayons vu la liaison de modèle explicite, voici un exemple de liaison de modèle implicite maintenant: référez-vous à la documentation d`API pour la classe sous-jacente de la façade d`artère et de l`instance de routage pour examiner toutes les méthodes accessibles. Souvenez-vous que, par défaut, RouteServiceProvider inclut vos fichiers d`itinéraires dans un groupe d`espaces de noms, ce qui vous permet d`enregistrer des itinéraires de contrôleur sans spécifier le préfixe d`espace de noms AppHttpControllers complet. Ainsi, vous devez seulement spécifier la partie de l`espace de noms qui vient après l`espace de noms AppHttpControllers de base. La liaison de modèle de routage dans Laravel fournit un mécanisme pour injecter une instance de modèle dans vos itinéraires. Toujours pas clair sur le sens, voici un exemple. Disons que nous voulons obtenir un message de la base de données, nous pourrions faire quelque chose comme ceci: Laravel résout automatiquement les modèles éloquent définis dans les itinéraires ou les actions de contrôleur dont les noms de variable de type-allusion correspondent à un nom de segment d`artère. Par exemple: pour inscrire une liaison explicite, utilisez la méthode de modèle du routeur pour spécifier la classe d`un paramètre donné. Vous devez définir vos liaisons de modèle explicites dans la méthode de démarrage de la classe RouteServiceProvider: tout est parfait pour le moment, car nous avons supprimé la vérification du modèle de toutes les méthodes.

Néanmoins, nous avons encore besoin d`attraper l`exception et de prendre les mesures appropriées. La méthode Model prend trois arguments, les arguments sont similaires à celui de la méthode Bind, avec un nouvel ajout le troisième argument qui est une fermeture qui lève la nouvelle exception. Vous pouvez remplir la propriété $with dans le modèle utilisateur. Comme ça; Nous pourrions également donner à notre lien plus de sens, par exemple ce que si nous voulons un poste que si est un projet? Pour cela, nous pourrions changer le deuxième paramètre de la route:: bind à une fermeture qui prend le paramètre d`itinéraire comme sa valeur. S`il vous plaît noter: ce sera le faire pour chaque requête de modèle d`utilisateur. Les itinéraires définis dans le fichier routes/API. php sont imbriqués dans un groupe de routage par le RouteServiceProvider. Dans ce groupe, le préfixe URI/API est automatiquement appliqué afin que vous n`ayez pas besoin de l`appliquer manuellement à chaque itinéraire du fichier.

Vous pouvez modifier le préfixe et les autres options de groupe de routage en modifiant votre classe RouteServiceProvider. Si vous souhaitez que la liaison de modèle utilise une colonne de base de données autre que ID lors de la récupération d`une classe de modèle donnée, vous pouvez substituer la méthode getRouteKeyName sur le modèle éloquent: Si vous définissez un itinéraire qui redirige vers un autre URI, vous pouvez utiliser la route :: Redirect (méthode). Cette méthode fournit un raccourci pratique afin que vous n`ayez pas à définir un itinéraire complet ou un contrôleur pour effectuer une redirection simple: Ceci est rendu possible en disant à Laravel d`injecter un modèle de poste dans n`importe quel contrôleur d`artère qui a un paramètre {post} attaché à lui. Par défaut, l`infrastructure recherche la colonne ID dans notre base de données. Si nous voulons utiliser une autre clé pour notre reliure, nous pouvons la personnaliser dans nos modèles éloquent. Tout ce que nous avons à faire est d`ajouter la méthode getRouteKeyName au modèle que nous voulons modifier. Vous pouvez utiliser la méthode route::p ermanentRedirect pour renvoyer un code d`État 301: sans la liaison de modèle d`artère, généralement notre méthode de Show de contrôleur ressemblirait à quelque chose comme ceci: puisque la variable de $user est le type-a laissé entendre comme le modèle d`AppUser éloquent et le nom de variable correspond au segment d`URI {User}, Laravel injectera automatiquement l`instance de modèle qui a un ID correspondant à la valeur correspondante de l`URI de la requête.