Как зайти в Даркнет?!
25th January, 01:11
6
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
895
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
914
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4351
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
MVC-где реализовать проверку формы (на стороне сервера)?
При кодировании традиционного приложения MVC, какова наилучшая практика для кодирования проверки формы на стороне сервера? Принадлежит ли код контроллеру или уровню модели? И почему?
из Википедии:
Model-view-controller (MVC) - это архитектурный шаблон, используемый в программной инженерии. Успешное использование шаблона изолирует бизнес-логику от соображений пользовательского интерфейса, что приводит к созданию приложения, в котором проще изменить либо внешний вид приложения, либо лежащие в его основе бизнес-правила, не затрагивая другие. В MVC модель представляет информацию (данные) приложения и бизнес-правила, используемые для управления данными; представление соответствует элементам пользовательского интерфейса, таким как текст, элементы checkbox и т. д.; а контроллер управляет деталями, связанными с сообщением модели действий пользователя, таких как нажатия клавиш и движения мыши.
Таким образом, модель-это удерживающее приложение и бизнес-правила.
Я полностью согласен с Джошем. Однако вы можете создать своего рода слой проверки между контроллером и моделью, чтобы большинство синтаксических проверок можно было выполнять на данных, прежде чем они достигнут модели.
Например,
Уровень проверки будет проверять формат даты, формат суммы, обязательные поля и т. д...
Таким образом, эта модель будет полностью сосредоточена на деловых проверках, таких как сумма x должна быть больше, чем сумма y.
Мой опыт работы с MVC до сих пор полностью состоит из rails.
Rails делает это проверка 100% в модели.
По большей части это работает очень хорошо. Я бы сказал, что в 9 случаях из 10 это все, что вам нужно.
Однако есть некоторые области, где то, что вы отправляете из формы, не соответствует вашей модели должным образом. Там может быть какая-то дополнительная фильтрация/перестановка или так далее.
Лучший способ решить эти ситуации, который я нашел, - это создать объекты искусственной модели, которые в основном действуют как объекты модели, но сопоставляют 1-to-1 с данными формы. Эти объекты искусственной модели на самом деле ничего не сохраняют, они просто ведро для данных с прикрепленными проверками.
Примером такой вещи (в rails) является ActiveForm
Как только данные попадают в них (и являются действительными), обычно довольно просто перенести их непосредственно на ваши фактические модели.