Laravel, ошибка возврата json на дублированных входах - PullRequest
0 голосов
/ 21 января 2020

Как я могу показать сообщение об ошибках дубликатов? форма не завершает процесс создания из-за дублирования, но она просто замирает, не показывая никаких сообщений, но если я оставил поля пустыми, то это показывает, что они необходимы enter image description here

public function store(Request $request)
{
    $validator = \Validator::make($request->all(), [
        'name'=>'required|unique:countires',
        'code'=>'required|unique:countires'
    ]);

    if ($validator->fails()) {
        return response()->json(['errors' => $validator->errors()->all()]);
    }

    $this->SourceData->storeData($request->all());
    return response()->json(['success'=>'Added successfully']);
}

ajax

$.ajax({
    url: $('#archiveurl').attr('href'),
    method: 'post',
    data: $("#createform").serialize(),

    beforeSend: function( xhr ) {
      Command: toastr["info"]("Uploading Data ...", "Sending Request");
    },

    success: function(result) {
        toastr.clear();
        if(result.errors) {
            $('.alert-danger').html('');
            $.each(result.errors, function(key, value) {
                $('.alert-danger').show();
                $('.alert-danger').append('<strong><li>'+value+'</li></strong>');
            });
        } else {
            $('.alert-danger').hide();
            $('.alert-success').show();
            Command: toastr ["success"] ("Added successfully", "Added status",{ timeOut: 900 });
            $('.clear_this input[type="text"]').val('');        

            $('.datatable').DataTable().ajax.reload();                      
        }

Ответы [ 2 ]

1 голос
/ 21 января 2020
         'name' => 'required|unique:countries,name,',
        'code' => 'required|unique:countries,code,', 

Проверьте название страны, я думаю, что вы написали это неправильно, это не имеет значения

1 голос
/ 21 января 2020
public function store(Request $request)
{
    $validator = Validator::make($request->all(), [
         'name' => 'required|unique:countries,name',
        'code' => 'required|unique:countries,code', 
    ]);

    if ($validator->fails()) {
        $errors = $validator->errors();
            return response()->json(['status' => false, 'errors' => $errors]);
    }

    $this->SourceData->storeData($request->all());
    return response()->json(['success'=>'Added successfully']);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...