Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Poprawność MVC
Ubermade
post 3.09.2018, 18:42:02
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 30.11.2017
Skąd: Leszno, Poland

Ostrzeżenie: (0%)
-----


Witam! Napisałem ostatnio wzorzec MVC w php i mam pewną obawę, że ciut źle zacząłem go używać. Może pokażę na przykładzie.

Mam tutaj funkcję w kontrolerze, która odpowiada za dodawanie kategorii:

  1. public function add(){
  2. Access::logged();
  3. $view = new \Ubermade\view\CategoryView();
  4. if(empty($_POST)){
  5. $view->renderHTML('add', 'front/category/');
  6. }else{
  7. $model = new \Ubermade\model\CategoryModel();
  8. $utilities = new \Ubermade\utilities\CategoryUtilities();
  9. $items = $utilities->add($_POST['name'], $model->getByName($_POST['name']));
  10. if($items){
  11. $model->add($_POST);
  12. RouterUtilities::redirect(RouterUtilities::generateUrl('category/list'));
  13. }else{
  14. $view->renderHTML('add', 'front/category/');
  15. }
  16. }
  17. }


W swoim projekcie zastosowałem pewnego rodzaju "pomocników", którzy zajmują się przetwarzaniem, oraz uwierzytelnianiem podanych informacji. W tym przypadku odnoszę się do klasy "CategoryUtilities" do funkcji"add", która wygląda następująco:

  1. public function add($name, $database){
  2. $check = true;
  3.  
  4. if($database){
  5. $check = false;
  6. Session::set('e_category_repeat', true);
  7. }
  8. if(strlen($name) < 1){
  9. $check = false;
  10. Session::set('e_category_length', true);
  11. }
  12.  
  13. iF($check){
  14. return true;
  15. }else{
  16. return false;
  17. }
  18. }


I tutaj się rodzi pytanie... Czy używanie takich "pomocników" jest zgodny ze wzorcem MVC, czy jednak taki kod powinno się pakować gdzie indziej, np modelu.
Jeżeli chodzi o nazwę "items" w kontrolerze, mimo, że może mieć ona jedynie wartość 1, to czasami, np: w dodawaniu użytkownika, mój "pomocnik" hashuje hasło, zwraca je do kontrolera, który później przesyła je modelu i do bazy danych.

Z góry dziękuję za pomoc smile.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
athabus
post 4.09.2018, 13:08:57
Post #2





Grupa: Zarejestrowani
Postów: 898
Pomógł: 48
Dołączył: 2.11.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Haha mój popisowy numer. Na pierwszym code review potrzebowałem minuty, żeby odpowiedzieć na pytanie co tu jest nie tak smile.gif
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 31.05.2024 - 12:41