Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

445
Visualizações
laravel use with() , pluck() juntos

Salida de consulta

\App\Post :

 function PostMeta(){ return $this->hasMany('App\PostMeta'); }

Y mi consulta: (arrancar no funciona) -

Necesito usar menos consultas de base de datos

 $query = \App\Post ::with(array('PostMeta'=>function($query){ $query->pluck('key','value'); })); $query->get();

Necesito obtener title_en , ¡pero no puedo usar arrancar aquí!

Nueva actualización

resuelto:

 function get_PostMeta(){ // print_r($this->relations['PostMeta']); return $this->relations['PostMeta']; } $query = \App\Post::with('PostMeta')->get(); foreach ($query as $key => $post){ $post->meta = $post->get_PostMeta()->pluck('value', 'key'); }
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

No puede hacer esto mientras está ansioso por cargar los datos, pero puede usar el método de recopilación con el mismo nombre pluck() en la vista al acceder a los datos de relación:

 {{ $post->postMeta->pluck('value', 'key') }}

En este caso, evitará el problema N+1 y obtendrá los datos en el formato que desee.

Actualizar

Dado que desea preparar datos para Vue, aquí hay un pequeño ejemplo de cómo podría iterar sobre la colección:

 foreach ($posts as $post) { $post->meta = $post->postMeta->pluck('value', 'key'); unset($post->postMeta); }
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda