ФорумПрограммированиеPHP для идиотовPHP и ООП → непонятки с ООП

непонятки с ООП

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 января 2010 г. 23:15, спустя 1 минуту 53 секунды


    а вот эти строчки всяким умным дядькам не надо смотреть ))
    а зачем ссылки даешь? я и так как в ужастик смотрел, закрыл рукой глаза и смотрел в щелку меду пальцами, а тут еще ТАКОЕ!!! чуть не умер со страху :-D
    Сапожник без сапог
  • soul

    Сообщения: 790 Репутация: N Группа: Кто попало

    Spritz 21 января 2010 г. 23:20, спустя 5 минут 26 секунд

    ну и я в этой теме отмечусь, что ли
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 января 2010 г. 23:24, спустя 3 минуты 36 секунд

    Расия Краснодыр Край Сочи
    о! мд5 те собутыльника нашли))
    Сапожник без сапог
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 21 января 2010 г. 23:25, спустя 1 минуту 41 секунду


    Расия Краснодыр Край Сочи
    о! мд5 те собутыльника нашли))
    ага и все с йоты, блять))
    все умрут, а я изумруд
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz 21 января 2010 г. 23:32, спустя 6 минут 58 секунд

    phpdude
    да все нормально, кому надо, тот не будет через пальцы смотреть, тем более я как бы не тебе давал ссылку ))
  • soul

    Сообщения: 790 Репутация: N Группа: Кто попало

    Spritz 21 января 2010 г. 23:39, спустя 6 минут 12 секунд


    Расия Краснодыр Край Сочи
    о! мд5 те собутыльника нашли))


    Вот бабки-сплетницы
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 21 января 2010 г. 23:42, спустя 3 минуты 10 секунд

    а я вот никогда такого не понимал…
    $User = new User();
    $User->Login = Request::Post('login');
    $User->Password = Request::Post('password');


    вот в этом маленьком кусочке кода аж 4 замечания.
    1) какой нах new  ????  по хорошему это юзать нечто NRG::getModel('user');
    2) какого хуя мы сетаем прямым путем обьекту свойства ? по хорошему надо както так $user->setLogin($loginFromRequest);
    3) я так и не понял что делает статичечкий метод Post() у класса Request…. , но по контексту видно что он типа геттер, но называется он хуй знает как…
    4) раз уж это был пример контроллера и этот кусок кода я выдернул у одного из его экшенов, то как по мне обращатся к реквесту он должен както так $this->getRequest();
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 января 2010 г. 23:50, спустя 8 минут 37 секунд

    1) какой нах new ???? по хорошему это юзать нечто NRG::getModel('user');
    в моем говнокоде наверху до этого было было дойти, но обломало писать и так дохуя написал)
    Сапожник без сапог
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 21 января 2010 г. 23:52, спустя 1 минуту 18 секунд


    1)Блок - это у тебя View? - отвечает за отображение обработанных данных?
    2)Модель - предоставляет нам данные из источника (БД, файлы и прочее)
    3) Контроллер - отвечает за логику данных, оповещает модели и вид(блок, view) о том что нужно обновиться (грубо говоря)
    Спустя 40 сек.
    вот тут я вижу разногласия… и думаю что я понимаю не правильно?
    Спустя 13 сек.
    щас буду рисовать.  
    Спустя 146 сек.
    вот например метод getPageName вытаскивает из модели имя страницы и отдает строку с этим именем, другому классу.
    Это что является модель, в твоем понимании?

    1) да
    2) да
    3) ну тут мне кажется ты чуток неверно понял, контроллер передает данные из реквеста в модель и говорит ей как себя вести, пример:
    в контроллере Custmoer есть такой метод view(), на него приходит гет в котором есть ид кастомера $customerId которого надо отобразить.
    контроллер вызывает модель, аля $customerModel = NRG::getModel('customer/customer');
    говорит ей мол дай мне данные из твоей сущности с id = $customerId, аля $customerModel->loadById($customerId)   или    $customerModel->setCustomerId($customerId)->load();
    и все.
    а потом отдаем необходимые данные в блок (view)
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 22 января 2010 г. 0:09, спустя 17 минут 44 секунды



    1)Блок - это у тебя View? - отвечает за отображение обработанных данных?
    2)Модель - предоставляет нам данные из источника (БД, файлы и прочее)
    3) Контроллер - отвечает за логику данных, оповещает модели и вид(блок, view) о том что нужно обновиться (грубо говоря)
    Спустя 40 сек.
    вот тут я вижу разногласия… и думаю что я понимаю не правильно?
    Спустя 13 сек.
    щас буду рисовать.  
    Спустя 146 сек.
    вот например метод getPageName вытаскивает из модели имя страницы и отдает строку с этим именем, другому классу.
    Это что является модель, в твоем понимании?

    1) да
    2) да
    3) ну тут мне кажется ты чуток неверно понял, контроллер передает данные из реквеста в модель и говорит ей как себя вести, пример:
    в контроллере Custmoer есть такой метод view(), на него приходит гет в котором есть ид кастомера $customerId которого надо отобразить.
    контроллер вызывает модель, аля $customerModel = NRG::getModel('customer/customer');
    говорит ей мол дай мне данные из твоей сущности с id = $customerId, аля $customerModel->loadById($customerId)   или    $customerModel->setCustomerId($customerId)->load();
    и все.
    а потом отдаем необходимые данные в блок (view)
    а в модели уже организуем всю логику, и прочее нужные нам вещи. Потом отдаем данные контролеру а он их передает в вид.
  • soul

    Сообщения: 790 Репутация: N Группа: Кто попало

    Spritz 22 января 2010 г. 0:03, спустя 23 часа 53 минуты 9 секунд

    phpdude,
    по-хорошему было бы тебе статью об этом написать с кодом этим и комментариями и выложить на пыхе в статьях, например. или на хабре
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 22 января 2010 г. 0:18, спустя 15 минут 40 секунд

    так с мвц разобрались по ходу.
    для закрепления:
    Пример:калькулятор.
    Вид:
    Шаблон по умолчанию: Форма с полями для ввода цифр и выбора действий.
    Шаблон "результат": Выводит пример и ответ на пример.
    Контроллер:
    По умолчанию отдает шаблон по умолчанию, без задействования модели.
    Если инициализирован нажатием кнопки на форме, то подготавливает данные (проверяет их), передает их модели, ждет ответа модели, отдает в представление с шаблоном "результат".
    Модель:
    содержит всего одно действие, это решение примера.

    Правильно ли я все понял?
    А я всегда использовал модель как средство для вытаскивание данных из БД(или другого места). А всю логику делал в контролере. А логику оказывается нужно отдавать модели.
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz 22 января 2010 г. 0:36, спустя 17 минут 20 секунд


    а я вот никогда такого не понимал…
    $User = new User();
    $User->Login = Request::Post('login');
    $User->Password = Request::Post('password');


    вот в этом маленьком кусочке кода аж 4 замечания.
    1) какой нах new  ????  по хорошему это юзать нечто NRG::getModel('user');
    2) какого хуя мы сетаем прямым путем обьекту свойства ? по хорошему надо както так $user->setLogin($loginFromRequest);
    3) я так и не понял что делает статичечкий метод Post() у класса Request…. , но по контексту видно что он типа геттер, но называется он хуй знает как…
    4) раз уж это был пример контроллера и этот кусок кода я выдернул у одного из его экшенов, то как по мне обращатся к реквесту он должен както так $this->getRequest();

    Раз на то пошло
    1) Если бля юзать орм то будет тебе то что ты написал 2)а кокого хуя это именно по хорошему у тебя? 3)а как его назвать PostGetter ? 4)Для входных данных есть Request:: и локальный $Params кому надо всё в одном - ради Бога - юзайте.
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 22 января 2010 г. 0:37, спустя 1 минуту 6 секунд


    так с мвц разобрались по ходу.
    для закрепления:
    Пример:калькулятор.
    Вид:
    Шаблон по умолчанию: Форма с полями для ввода цифр и выбора действий.
    Шаблон "результат": Выводит пример и ответ на пример.
    Контроллер:
    По умолчанию отдает шаблон по умолчанию, без задействования модели.
    Если инициализирован нажатием кнопки на форме, то подготавливает данные (проверяет их), передает их модели, ждет ответа модели, отдает в представление с шаблоном "результат".
    Модель:
    содержит всего одно действие, это решение примера.

    Правильно ли я все понял?
    ну на примере обьяснил вроде правильно =)

    так с мвц разобрались по ходу.

    что дальше ?  =)
    в итоге тему надо было назвать как "непонятки с мвц"   =)
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz 22 января 2010 г. 0:39, спустя 2 минуты 14 секунд

    mario
    хуевая диаграмм, запутанная и всё такое. Там должно быт просто три квадрата и стрелочки которые показывают направления возможных обращений и писец…

Пожалуйста, авторизуйтесь, чтобы написать комментарий!