আমার অনুরোধের প্যারামিটারের মূল্য এর মতো বদলাতে হবে:
$request->name = "My Value!";
আমি এই কোডটি ব্যবহার করি তবে কার্যকর হয় না:
$request->offsetSet('img', $img);
আমার অনুরোধের প্যারামিটারের মূল্য এর মতো বদলাতে হবে:
$request->name = "My Value!";
আমি এই কোডটি ব্যবহার করি তবে কার্যকর হয় না:
$request->offsetSet('img', $img);
উত্তর:
ব্যবহার merge()
:
$request->merge([
'user_id' => $modified_user_id_here,
]);
সরল! পুরোটি $request->all()
অন্য ভেরিয়েবলে স্থানান্তর করার দরকার নেই ।
চেষ্টা কর:
$requestData = $request->all();
$requestData['img'] = $img;
এটি করার আরেকটি উপায়:
$request->merge(['img' => $img]);
এটির জন্য @ জোয়েলহিনজকে ধন্যবাদ।
যদি আপনি নেস্টেড ডেটা যুক্ত করতে বা ওভাররাইট করতে চান:
$data['some']['thing'] = 'value';
$request->merge($data);
আপনি যদি Request $request
বস্তু ইনজেক্ট না করেন তবে আপনি এর পরিবর্তে গ্লোবাল request()
সহায়ক বা \Request::
মুখোমুখি ব্যবহার করতে পারেন$request
Request
এল 5 এর উত্স কোডটি দেখেছি এবং আমি এই পদ্ধতিগুলি দেখতে পাচ্ছি। ধন্যবাদ
আপনার যদি অনুরোধটি কাস্টমাইজ করতে হয়
$data = $request->all();
আপনি ক্ষেত্রের নাম এবং মানটি পাস করতে পারেন
$data['product_ref_code'] = 1650;
এবং অবশেষে নতুন অনুরোধটি পাস করুন
$last = Product::create($data);
আপনি যদি অনুরোধে কোনও সম্পত্তি আপডেট করতে চান তবে আমি আপনাকে লারাভেল দ্বারা ব্যবহৃত অনুরোধ ক্লাস থেকে প্রতিস্থাপন পদ্ধতিটি ব্যবহার করার পরামর্শ দিচ্ছি
$request->replace(['property to update' => $newValue]);
দুর্দান্ত উত্তর এখানে তবে জেএসএএন অনুরোধে আমার একটি মান প্রতিস্থাপন করতে হবে। কোডটিতে কিছুটা খনন করার পরে, আমি নিম্নলিখিত কোডটি নিয়ে এসেছি। আমি বোবা কিছু করছি কিনা আমাকে জানান।
$json = $request->json()->all();
$json['field'] = 'new value';
$request->json()->replace($json);
যদি আপনি বৈধতার জন্য কাস্টম অনুরোধগুলি ব্যবহার করেন, বৈধতার জন্য ডেটা প্রতিস্থাপনের জন্য, বা ডিফল্ট ডেটা সেট করতে (চেকবক্স বা অন্যান্য) ওভাররাইড পদ্ধতি ব্যবহার করেন prepareForValidation()
।
namespace App\Http\Requests\Admin\Category;
class CategoryRequest extends AbstractRequest
{
protected function prepareForValidation()
{
if ( ! $this->get('url')) {
$this->merge([
'url' => $this->get('name'),
]);
}
$this->merge([
'url' => \Str::slug($this->get('url')),
'active' => (int)$this->get('active'),
]);
}
}
আমি আশা করি এই তথ্য কারও জন্য কার্যকর হবে।