Я хочу создать выпадающий список, который отображает годы, и вот, что я сделал. Я создал метод в моем контроллере ниже.
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>
Однако в раскрывающемся списке не отображаются годы. Я пытаюсь понять, почему, но у меня закончились идеи. Любое руководство от экспертов поможет.