首页 > 解决方案 > Laravel - 在数据库的列中显示选定的 ID

问题描述

我想在我的编辑页面的列中选择我数据库中的选定 ID 或数据。我该怎么做?到目前为止,我已经完成了这段代码,但它给了我一个错误。

这是我的控制器

 public function index($id)
{
    $setting = Setting::find($id);
    return view('admin.settings.edit', compact('setting'));
}

这是我的看法

{!! Form::open(['action' => ['Admin\SettingsController@update', $setting->id], 'method' => 'POST']) !!}

        <div class="col-md-4 col-sm-4 ">
            {{Form::label('air_code', 'Airline Code')}}<br>
            {{Form::text('air_code', $setting->settings_code[1], ['class' => 'form-control', 'placeholder' => 'Enter Air Code', 'id'=>'aircode','disabled'])}}
        </div>

        <div class="col-md-4 col-sm-4 ">
            {{Form::label('Flight_No', 'Flight No.')}}<br>
            {{Form::text('Flight_No', $setting->settings_code[2], ['class' => 'form-control', 'placeholder' => 'Enter a Flight Number', 'id'=>'flightno','disabled'])}}
        </div>
{!! Form::close() !!}

我在我的一列 settings_code 中有什么

[1]FLIGHT_NO,[2]AILINE_NAME

我的错误是:

函数 SettingsController::index() 的参数太少,传递了 0,预期正好 1

标签: phpmysqllaravelphpmyadmineloquent

解决方案


如果我正确理解问题:如果值用逗号分隔,试试这个:

@php
   $settings_code = explode(",", $setting->settings_code);
@endphp

 <div class="col-md-4 col-sm-4 ">
  {{Form::label('air_code', 'Airline Code')}}<br>
  {{Form::text('air_code', $settings_code[0], ['class' => 'form-control', 'placeholder' => 'Enter Air Code', 'id'=>'aircode','disabled'])}}
 </div>

 <div class="col-md-4 col-sm-4 ">
  {{Form::label('Flight_No', 'Flight No.')}}<br>
  {{Form::text('Flight_No', $settings_code[1], ['class' => 'form-control', 'placeholder' => 'Enter a Flight Number', 'id'=>'flightno','disabled'])}}
 </div>

虽然我仍然觉得在同一个单元格上有这两个值很奇怪。


推荐阅读