Maison  >  Questions et réponses  >  le corps du texte

Méthode dynamique pour transmettre les paramètres de requête Laravel Eloquent

<p>J'ai les paramètres de requête suivants au format chaîne</p> <pre class="brush:php;toolbar:false;">$query = '->whereIn('short_code', ["9999"])->whereBetween('request_timestamp', [request(' startTime'), request('endTime')])';</pre> <p>Comment puis-je le transmettre à Eloquent ? J'essaie de réaliser quelque chose comme ça</p> <pre class="brush:php;toolbar:false;">InboundMessage::query()->{$query};</pre> <p>J'ai eu l'erreur suivante</p> <pre class="brush:php;toolbar:false;">Propriétés[->whereIn('short_code', ["9999"])->whereBetween('request_timestamp', [request('startTime' ), request('endTime')])] n'existe pas sur l'instance du générateur Eloquent. ≪/pré>
P粉879517403P粉879517403437 Il y a quelques jours421

répondre à tous(1)je répondrai

  • P粉600402085

    P粉6004020852023-09-01 10:40:21

    Le problème avec la requête ci-dessus est qu'elle ressemble à ceci

    InboundMessage::query()->->whereIn('short_code', ["9999"])..

    Puisque vous utilisez -> à la fois dans le générateur de requêtes et dans la chaîne $query. Alors ajustez simplement votre $query à

    $query = 'whereIn('short_code', ["9999"])->whereBetween('request_timestamp', [request('startTime'), request('endTime')])';

    répondre
    0
  • Annulerrépondre