Проверка и маршрутизация на стороне клиента с использованием Laravel Коллектива, Bootstrap Модель и JavaScript? - PullRequest
0 голосов
/ 21 марта 2020

Я хочу создать лучшую систему входа в Интернет для малого бизнеса, которому я сейчас помогаю.

Я решил go с Laravel, как я использовал это раньше, и изначально получить собирается создать простую форму Employee (используя Laravel Collective), которая запрашивает определенные поля Employee. Например, имя, возраст, пол, отдел, офис и т. Д. c.

Теперь я хотел сделать профиль сотрудника «медленно меняющимся измерением». Это означает, что, если пользователь решит изменить определенные поля, в представлении Blade Edit вместо простого нажатия кнопки отправки и разрешения контроллеру обновления проверить и обновить записи. Есть ли способ, где в самом представлении «Правка»:

Если, скажем, он обнаруживает, что поля «Отдел» или «Офис» изменяются, то, когда пользователь нажимает кнопку «Отправить», может отображать короткое сообщение (во всплывающем окне Bootstrap Модальное или что-то подобное), которое гласит:

«Мы заметили, что атрибуты« Отдел »и« Офис »сотрудника изменились. Если это исправление предыдущей ошибки в текущая запись, пожалуйста, нажмите кнопку «Изменить текущую запись». (контроллер обновит текущую запись, что я знаю, как сделать). Если это действительно изменение профиля сотрудника, пожалуйста, нажмите кнопку «Обновить профиль сотрудника» (затем кнопка будет go для другой функции в контроллере, которая создает новую запись для этого сотрудника и помечает статус «current_flag» вновь созданной записи как «Да», а статус «current_flag» их старой записи - как « Нет)

Во-вторых, похоже на все это. Есть ли способ включить проверку полей формы на стороне клиента ( используя javascript или в laravel коллективной системе), чтобы проверить наличие обязательных полей или поле данных, находящееся в или после другого поля даты. Что-то такое. Перед выполнением функции контроллера она проверяет.

Пожалуйста, дайте мне знать, правильно ли я думаю о вышеизложенном, возможна ли эта штука даже в Laravel, или мне следует использовать другой программное обеспечение, которое лучше в этом. Так как я только начал / нахожусь на очень ранних этапах обучения, я бы предпочел проверить это и получить это прямо сейчас, чем создать что-то, что не может быть масштабировано или не будет работать позже.

Большое спасибо заранее!

Сачин

Ответы [ 2 ]

0 голосов
/ 21 марта 2020

Я смог включить проверку в самой форме, используя следующий синтаксис:

<div class ="form-group">
   {!! Html::decode(Form::label('first_name','<strong>First Name:</strong>')) !!}
  {{Form::text('first_name', old('first_name'), ['class' => 'form-control '.($errors->has('first_name') ? 'is-invalid': ''), 'placeholder' => '', 'required'])}}
</div>

Но не совсем понимаю, что делает этот бит:

.($errors->has('first_name') ? 'is-invalid': '')

I у меня уже есть обязательный параметр в конце массива.

Я только что скопировал приведенный выше код, который нашел после исследования в Интернете, но это часть кода, которую я не до конца понимаю.

Есть идеи?

0 голосов
/ 21 марта 2020

Да, все, что вы упомянули, выполнимо и довольно распространено. Однако, поскольку это очень широкий вопрос, я не могу быть более конкретным c.

. Для первого вопроса вы можете сделать, как вы говорите: показать всплывающее окно с вопросом и на основе выбора пользователя отправьте ваш запрос в другую конечную точку API. Так, например, если пользователь решает обновить запись, вы отправляете запрос на /user/update и т. Д.

Что касается второго вопроса, то да, очень часто встречаются как на стороне клиента, так и на стороне сервера. Проверка. Однако это означает, что вы должны написать один и тот же код дважды, что может очень быстро устареть (особенно если у вас много форм). Многие люди проходят проверку на стороне сервера и просто отображают ошибки клиенту. Кроме того, вы всегда должны полагаться ТОЛЬКО на проверку на стороне сервера, прежде чем сохранять данные в базу данных.

При этом, как упоминал Ульри c Макардл в комментариях, VueJS является очень популярной платформой для интерфейс и множество ресурсов о том, как интегрировать его с Laravel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...