Guest User

https://github.com/fxsloker/Student

a guest
Jan 16th, 2016
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.03 KB | None | 0 0
  1. >>626291
  2. http://pastebin.ru/vKfLkBPw
  3. https://github.com/fxsloker/Student
  4.  
  5. >Ты случайно не думаешь ли что число моделей = числу контроллеров? Если так то ты плохо понял зачем они нужны. Контроллер = раздел сайта или страница, модель = сущность в БД. между ними не обязательно должно быть соотношение 1 к 1.
  6.  
  7. Теперь не думаю.
  8.  
  9. >https://github.com/fxsloker/Student/blob/master/app/Controllers/FrontController.php
  10. >Название неудачное так как можно подумать что он имеет какое-то отношение к паттерну Front Controller. Надо переименовать.
  11.  
  12. Я и хотел сделать паттерн FrontController. Но сейчас загуглил, посмотрел примеры реализации. FrontController это тот же роутер что ли? Он вызывает нужный контроллер и экшен. Значит мой роутер уже FrontController?
  13.  
  14. >Действия, предназначеннные для вызова снаружи стоит как-то пометить, например добавив слово Action в название.
  15.  
  16. Сделал.
  17.  
  18. >https://github.com/fxsloker/Student/blob/master/app/config.php#L9
  19. >Префикс таблиц предлагаю выпилить
  20.  
  21. Сделал.
  22.  
  23. >https://github.com/fxsloker/Student/blob/master/app/students.sql#L37
  24. > `year` tinyint(4) NOT NULL,
  25. >В MySQL есть тип YEAR, перечитай-ка список типов колонок
  26.  
  27. Ты прав. Сделал.
  28.  
  29. > `groupNumber` char(3) NOT NULL,
  30. >По моему 3 символов не хватит по условиям задачи.
  31.  
  32. Сделал.
  33.  
  34. >https://github.com/fxsloker/Student/blob/master/app/Router.php#L17
  35. >Попробуй это сделать через sprintf, может будет читабельнее
  36.  
  37. Не понял, что не читабельно. Сделал, вроде также читабельно как и раньше.
  38.  
  39. >https://github.com/fxsloker/Student/blob/master/app/Router.php#L34
  40. >Что за странная проверка на !empty? И что вернется если оно empty?
  41.  
  42. Просто увидел где-то и повторил.
  43.  
  44. >Также, тебе дополнительное задание. Как ты наверно знаешь, при всяких ошибках в PHP вроде неправильно написанной переменной PHP лишь вывводит варнинг и продолжает работу скрипта. Это плохо. Переделай код так, чтобы любой варнинг или нотис приводил к выбросу исключения, как это сделать, написано например тут: http://php.net/manual/ru/class.errorexception.php
  45.  
  46. Сделал.
  47.  
  48. ОП, я запилил View, даже вывел кое-что.
  49. Установил composer, и сделал автозагрузчик. Благо я с ним раньше много работал, ничего сложного.
  50.  
  51. Я все равно не понимаю. Вот есть у меня в контроллере addAction, он создает модель студента и запускает ее метод add, а там вызывается метод класса работы с БД тот же add? Или как? Мне не нравится это дублирование. И я не знаю других способов. Давай вот на этом моменте подробнее остановимся.
  52.  
  53. А еще про 404 ошибку, думаю надо отдельный файл шаблона создать, и чтобы роутер вызывал метод indexAction в контроллере с аргументом '404' например. Верно?
Add Comment
Please, Sign In to add comment