У меня есть приложение \ Services \ Macros.php
<?php namespace App\Services;
use Collective\Html\FormBuilder;
class Macros extends FormBuilder {
public function selectBg($name,$selected = '2', $options = array())
{
$list = [
'' => 'Select One...',
'1' => 'O+ve',
'2' => 'O-ve',
'3' => 'A+ve',
'4' => 'A-ve',
];
return $this->select($name, $list, $selected, $options);
}
}
MacroServiceProvider.php включает следующий код:
<?php namespace App\Providers;
use App\Services\Macros;
use Collective\Html\HtmlServiceProvider;
/**
* Class MacroServiceProvider
* @package App\Providers
*/
class MacroServiceProvider extends HtmlServiceProvider {
public function register()
{
parent::register();
$this->app->singleton('form', function ($app) {
$form = new Macros($app['html'], $app['url'], $app['view'], $app['session.store']->token());
return $form->setSessionStore($app['session.store']);
});
}
}
В форме, которую я назвал с помощью {{Form::select()}}
, ноЯ получаю сообщение об ошибке:
Ошибка типа: слишком мало аргументов для функции Collective \ Html \ FormBuilder :: select (), 0 передано в E: \ xamp \ htdocs \ crud \ vendor \ laravel \framework \ src \ Illuminate \ Support \ Facades \ Facade.php в строке 221 и по крайней мере 1 ожидаемый (представление: E: \ xamp \ htdocs \ crud \ resources \ views \ newfile \ forms.blade.php)