Je souhaite utiliser la création d'enregistrements actifs d'Eloquent pour créer une requête de recherche, mais ce sera une recherche LIKE. J'ai trouvé le User::find($term)
ou User::find(1)
, mais cela ne génère pas une déclaration similaire. Je ne cherche pas une réponse directe, mais si quelqu'un pouvait au moins me donner une direction à regarder, ce serait génial!
94
Réponses:
Vous pouvez effectuer des recherches de base de données en utilisant LIKE avec cette syntaxe:
la source
table.field
.Si vous avez besoin d'utiliser fréquemment LIKE, vous pouvez simplifier un peu le problème. Une méthode personnalisée comme () peut être créée dans le modèle qui hérite de l'ORM Eloquent:
Vous pouvez donc utiliser cette méthode de cette manière:
la source
->where()
.Pour info, la liste des opérateurs (contenant comme et tous les autres) est en code:
avertissement:
La réponse de Joel Larson est correcte. J'ai mon vote favorable.
J'espère que cette réponse jettera plus de lumière sur ce qui est disponible via l'ORM Eloquent ( pointe les gens dans la bonne direction ). Alors qu'un lien vers la documentation serait bien meilleur, ce lien s'est avéré insaisissable.
la source
Utilisez des guillemets doubles au lieu de guillemets simples, par exemple:
Voici mon code:
la source
Si vous n'aimez pas les guillemets doubles comme moi, cela fonctionnera pour vous avec des guillemets simples:
la source