php - Trying to showing data in a select with method pluck - Laravel
Get the solution ↓↓↓I'm trying to do a simple select summoning data from method pluck.
I tried to do dd($var) in the controller and the x380 data entries are receiving correctly.
Then the next error appears:
Undefined variable: valor (View: C:\laragon\www\envio-curriculum\resources\views\enviar_curriculum.blade.php)
$valor is undefined Make the variable optional in the blade template. Replace {{ $valor }} with {{ $valor ?? '' }}
If I do this I can see the blade without errors, but in the select appears x380 void data put what I put in the option section.
What am I missing?
EnviarCurriculumController.php
namespace App\Http\Controllers\enviarCurriculum;
use App\EnviarCurriculum;
use App\Configuracion;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Http\Requests\StoreEnviarCurriculumPost;
class EnviarCurriculumController extends Controller
{
public function create()
{
$configuraciones = Configuracion::pluck('ID', 'variable', 'valor', 'valor_numerico', 'tabla', 'texto_largo', 'observacion');
return view('enviar_curriculum', ['EnviarCurriculum' => new EnviarCurriculum(), 'configuraciones' => $configuraciones]);
}
public function store(StoreEnviarCurriculumPost $request)
{
EnviarCurriculum::create($request->validated());
return back()->with('status', 'ВЎCurriculum creado con Г©xito!');
}
}
Configuracion.php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Configuracion extends Model
{
protected $table = 'configuracion';
protected $primaryKey = 'ID';
protected $fillable = [
'variable',
'valor',
'valor_numerico',
'tabla',
'texto_largo',
'observacion'
];
}
enviar_curriculum.blade.php
<select name="titulacion" id="titulacion">
<option disabled selected value="">* TitulaciГіn mas reciente</option>
@foreach ($configuraciones as $configuracion)
<option> {{ $valor }}</option>
@endforeach
</select>
Answer
Solution:
You missed passing$configuracion
in your loop.
Try this:
In your controller
$configuraciones = Configuracion::select(['ID', 'variable', 'valor', 'valor_numerico', 'tabla', 'texto_largo', 'observacion'])->get();
OR
$configuraciones = Configuracion::get(['ID', 'variable', 'valor', 'valor_numerico', 'tabla', 'texto_largo', 'observacion']);
<select name="titulacion" id="titulacion">
<option disabled selected value="">* TitulaciГіn mas reciente</option>
@foreach ($configuraciones as $configuracion)
<option>{{ $configuracion['valor'] }}</option>
@endforeach
</select>
Share solution ↓
Additional Information:
Link To Answer People are also looking for solutions of the problem: attempt to read property "id" on null
Didn't find the answer?
Our community is visited by hundreds of web development professionals every day. Ask your question and get a quick answer for free.
Similar questions
Find the answer in similar questions on our website.
Write quick answer
Do you know the answer to this question? Write a quick response to it. With your help, we will make our community stronger.