尝试使用方法 pluck 在 select 中显示数据 - Laravel

Trying to showing data in a select with method pluck - Laravel

我正在尝试做一个简单的 select 从方法 pluck 中调用数据。

我尝试在控制器中执行 dd($var) 并且 x380 数据条目正在正确接收。

然后出现下一个错误:

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 ?? '' }}

如果我这样做,我可以看到 blade 没有错误,但在 select 中出现 x380 void data 把我放在选项部分的内容。

我错过了什么?

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>

您在循环中错过了传递 $configuracion

试试这个:

在您的控制器中

$configuraciones = Configuracion::select(['ID', 'variable', 'valor', 'valor_numerico', 'tabla', 'texto_largo', 'observacion'])->get();

$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>