猿问

Laravel 中的下拉年份列表未显示

我想生成一个显示年份的下拉列表,到目前为止,这就是我所做的。我在下面的控制器中创建了一个方法。


namespace App;


use Illuminate\Database\Eloquent\Model;

use Illuminate\Support\Carbon;

use Illuminate\Support\Facades\Log;


class RUMSModel extends Model

{

    protected $primaryKey = 'id';

    protected $fillable = [];

    protected $dateFields = [];

    protected $dropdownFields = [];


    public $module_dir = '';

    public $module = '';

    public $importFields = [];


    public static $months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];


    public function selectYear($name, $startYear, $endYear, $selected = null, $options = array())

    {

        $years = range($startYear, $endYear);

        $years = array_combine($years, $years); // [2013 => 2013]


        return $this->select($name, $years, $selected, $options);

    }

?>

使用它在 Blade 模板中显示:


<div class="col-lg-6">

  <div class="form-group">

     <label for="validation-latest_estimate_year"><b>Latest Estimate Year:</b></label>

      <select id="validation-latest_estimate_year" class="form-control" name="latest_estimate_year">

      <option value="">-Select Year-</option>

         @foreach($model->selectYear('year') as $year)

           <option value="{{$year}}" {{$year == $model->latest_estimate_year ? 'selected': ''}}>{{$year}}</option>

         @endforeach

      </select>

   </div>

</div>

但是,下拉列表不显示年份。我试图找出原因,但我没有想法。专家的任何指导都会有所帮助。


沧海一幻觉
浏览 154回答 2
2回答

郎朗坤

为什么不selectYear()从laravelcollective/html包中使用?安装:composer&nbsp;require&nbsp;laravelcollective/html视图/刀片:{!!&nbsp;Form::selectYear('year',&nbsp;1900,&nbsp;2019)&nbsp;!!}
随时随地看视频慕课网APP
我要回答