سلام
من یکمی تازه کارم تو لاراول یه سوال داشتم
چطوری میشه دیتایی که از طریق پست برای فرم آپدیت میاد رو داخل کنترلر چک کنیم و اگر ست شده بود اعتبار سنجیش کنیم؟
مثلا دو تا فیلد داریم یکی title و یکی text که مثلا text اجباری نباشه چطوریه میشه چک کرد اگر ست شده بود اعتبار سنجی رو روش انجام داد و اگر نه رد بشه؟
همچنین وقتی اعتبار سنجی شد چطوری باید آپدیتشون کنیم داخل دیتابیس؟
درود...
یه فایل CategoryUpdateRequest ایجاد کنید:
public function rules()
{
return [
'name' => ['required', 'string', 'max:255'],
'category_id' => ['nullable', 'exists:categories,id']
];
}
کد زیر در کنترلر:
public function update(CategoryUpdateRequest $request, Category $category)
{
$category->update(
$request->validated()
);
$category->update(
$request->only(['name', 'category_id'])
);
session()->flash('status', 'دسته بندی به درستی ویرایش شد!');
return redirect()->route('categories.index');
}
و سومی تعریف اعتبار سنجی:
@error('name')
<p class="error">{{ $message }}</p>
@enderror
سلام وقت بخیر ، ببینید این ها موارد ابتدایی هستن داخل فریم ورک لاراول پیشنهاد میکنم دوره رایگان لاراول از همین سایت رو ببینید
سلام دوست عزیز لینک های زیر رو چک کنید
https://laravel.com/docs/9.x/validation#quick-writing-the-validation-logic
https://laravel.com/docs/9.x/validation#rule-nullable
@eniack داخل اون قسمت اعتبار سنجی رو توضیح داده بصورت کامل ولی توضیح نداده که اگر یه فیلدی خالی ارسال شد یا مثلا ارسال نشده بود دیگه required نباشه و اعتبار سنجی روش صورت نگیره و وقتی الان تو فرم من ست نشه یا خالی و NULL ارسال شه ارور میده چون required هست و باید اعتبار سنجی بشه
درود...
یه فایل CategoryUpdateRequest ایجاد کنید:
public function rules()
{
return [
'name' => ['required', 'string', 'max:255'],
'category_id' => ['nullable', 'exists:categories,id']
];
}
کد زیر در کنترلر:
public function update(CategoryUpdateRequest $request, Category $category)
{
$category->update(
$request->validated()
);
$category->update(
$request->only(['name', 'category_id'])
);
session()->flash('status', 'دسته بندی به درستی ویرایش شد!');
return redirect()->route('categories.index');
}
و سومی تعریف اعتبار سنجی:
@error('name')
<p class="error">{{ $message }}</p>
@enderror
کد اول اعتبارسنجی داده های ورودی را شناسایی می کند
کد دوم اطلاعات رو به دیتابیس ارسال و به روز رسانی می کند...
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟