Как добавить переменные в request()-> all()? (Laravel 6.0)
У меня есть Laravel 6.0 с чем-то вроде этого, используя request()->all();
помощник для создания новой строки в базе данных...
$input = request()->all();
Service::create($input);
Я хочу добавить в него две переменные вручную, чтобы нам не нужно было добавлять их вручную. Я пробовал варианты этого...
$time = time();
$input = array_merge(request()->all(), ['serviceSite' => 'companyname', 'serviceOrderedTime' => $time]);
Service::create($input);
Есть ли способ сделать это с помощью request()
помощник или мне нужно использовать альтернативный метод?
4 ответа
Попробуй это.
$time = time();
$input = $request->all();
$input['serviceSite'] = 'companyname';
$input['serviceOrderedTime'] = $time;
Service::create($input);
Убедиться serviceSite
а также serviceOrderedTime
заполняется в вашей модели.
ЕСЛИ вы хотите объединить его с $request
тогда вы можете сделать вот так.
$request->merge(["key"=>"value"]);
Как твой путь.
$time = time();
$request->request->add(['serviceSite' => 'companyname','serviceOrderedTime'=>$time]);
Service::create($request->all());
Вот как вы можете установить переменную в свой запрос:
$request->request->set('serviceSite', 'serviceSite');
$request->request->set('serviceOrderedTime', $time);
Чтобы разрешить массовое присвоение,serviceSite
а также serviceOrderedTime
может быть включен в ваш $fillable
свойство модели.
Надеюсь, это поможет.
В laravel есть вспомогательная функция collection
называется add
Вы можете использовать это так
$request->add(['serviceSite' => 'companyname']);
$request->add(['serviceOrderedTime' => $time]);
Service::create($request->all());
или вы можете сделать это обычным способом
$request = request()->all();
$request['serviceSite'] = 'companyName';
$request['serviceOrderedTime'] = $time;
Если вы пытаетесь добавить новое значение ключа в файл FormRequest, вы можете сделать это
class CreateKubernetesRequest extends FormRequest
{
public function rules()
{
$rules = [
'zone' => 'required|exists:zone_offerings,name',
];
$this->request->add(['version_id' => "SOME ID"]);
return $rules;
}
}