php mvc с классом для каждого действия - PullRequest
0 голосов
/ 12 марта 2012

Итак, я работаю над PHP MVC для клиента уже около 3 недель, у меня довольно далеко.

Я объясню небольшую часть системы.

Существует три типа пользователей: Fitters, Agencys и Admins.

все они могут войти в систему и иметь ограниченную функциональность, администратор, очевидно, имеет все функции!

Администратор может add, edit and delete users, jobs, stock бла-бла, обычный.

То, как я настроил это до сих пор, похоже ...

Строка запроса имеет вид: /admin/users/?method=agency&action=add

Это вызовет контроллер admin и вызовет функцию users.

Функция users вызывает модель users.

Модель users содержит функции для add, edit, delete, admins, fitter, and agencies.

action=add&method=admin вызовет add_admin(), который будет динамически возвращать форму для администраторов

action=edit&method=fitter вызовет edit_fitter(), который будет динамически возвращать форму для редактирования установщиков

Теперь мне было интересно ...

Было бы лучше, если бы у меня был ADD класс. со ВСЕМИ методами добавления, такими как add_fitter, add_agency, add_admin, add_job, add_stock и т. д., а затем класс для EDIT, класс для DELETE и класс для VIEW ???

Это был бы хороший способ?

Я думал, что, делая это, я могу ограничить зависимость от классов, таких как USERs.

Поскольку пользовательский класс adds, edits, deletes, inserts, updates and views fitters, agencies, and admins. Поэтому пользовательскому классу нужен класс Validator, database, Form, который возвращает HTML-формы для добавления, редактирования и т. Д. И т. Д.

Однако если бы у меня был ОДИН класс для ВСЕХ добавлений, то это уничтожило бы зависимость для валидатора? потому что класс add будет отвечать за возврат формы. Ничего другого

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

Так что я просто спрашиваю вас, добрые люди, можете ли вы предвидеть проблему с этим методом?

как обычно это делается?

или по какой-то причине этот метод исключен?

ЛЮБЫЕ советы или советы будут с благодарностью приняты!

Просто чтобы прояснить ... Я спрашиваю, нужно ли мне иметь отдельные классы для добавления, редактирования, удаления и просмотра

Alex

Ответы [ 2 ]

1 голос
/ 12 марта 2012

Я думаю, что лучший способ - сохранить уровень доступа пользователя (сеанс и т. Д.) И отобразить страницу в соответствии с тем, что было сохранено в сеансе. URL должны быть только /admin/users/?action=add

Или

admin/user/edit/?id=27

router/controller/action/?param1=value1

0 голосов
/ 23 марта 2012

Просто если кому-то было интересно, я реализовал свой mvc таким образом, и он стал намного лучше!

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