سلام
چجوری متن ارور رو از form request بگیرم و از controller پاس بدم front
form request
<?php
namespace App\Http\Requests\Admin;
use Illuminate\Foundation\Http\FormRequest;
class CreateAdminRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'first_name' => 'required|min:3|regex:/^[a-zA-ZÑñ\s]+$/',
'email' => 'required|email|unique:admins',
'password' => 'required|min:8',
];
}
public function messages()
{
return [
'first_name.required' => 'لطفا نام را وارد کنید',
'first_name.min' => 'نام حداقل باید ۳ کاراکتر باشد',
'first_name.regex' => 'لطفا حروف را به انگلیسی تایپ کنید',
'email.required' => 'لطفا ایمیل را وارد کنید',
'email.email' => 'فرمت ایمیل باید اینگونه باشد : example@gmail.com',
'email.unique' => 'ایمیل تکراری است',
'password.required' => 'فیلد رمز را وارد کنید',
'password.min' => 'رمز حداقل باید ۸ کاراکتر باشد',
];
}
controller
<?php
namespace App\Http\Controllers;
use App\Http\Requests\Admin\CreateAdminRequest;
use App\Services\AdminService;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
class AdminController extends Controller
{
public function create(CreateAdminRequest $req)
{
if ($->fails()) {
return response()->json([
"status" => false,
"errors" => $->errors()->all(),
]);
} else {
$create = AdminService::create($req->first_name, $req->email, $req->password);
return response()->json([
"status" => $create["status"],
"message" => $create["message"],
]);
}
}
}
نیاز نیست شما ریسپانس بدید
use Illuminate\Http\Request;
public function store(Request $request)
{
$validated = $request->validate([
'title' => 'required|unique:posts|max:255',
'body' => 'required',
]);
// The blog post is valid...
}
به این شکل چرا استفاده نمیکنید
توی فرانت هم بدین صورت فراخوانی کنید
@error('title')
<div class="alert alert-danger">{{ $message }}</div>
@enderror
ممنونم @hosseinradvictor جان
ریسپانس بخاطر اینه که پروژه بصورت api هست و front و back از هم جدان
و این روشی که گفتید رو قبلا استفاده کردم
و برای سازماندهی و مدیریت بهتر رو آوردم به form request
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟