Вход • Регистрация

Переменные в Diafan

  • 03 марта 2016 г.
  • Добрый день!
    Возник вопрос следующего характера
    У меня есть шаблон shop.list и в нём есть show.block
    можно ли как то передать значение переменной из shop.list в show.block и наоборот?
    • 03 марта 2016 г. , редакция: 03 марта 2016 г.
    • Цитата
      У меня есть шаблон shop.list и в нём есть show.block
      Что Вы имеете ввиду под словами: "у меня есть shop.list и show.block"? В оригинальном дистрибутиве есть, например, shop.php, shop.model.php, shop.view.list.php, shop.view.show_block.php. Вы это имеете ввиду или функции? Возможно Вам надо начать от сюда.
      Если Вы имеете ввиду shop.view.list.php, shop.view.show_block.php, то надо понимать как у Вас организовано использование данных файлов. По умолчанию конечно можно извратиться через глобальные переменные, но Вам скорее всего надо работать с shop.php и shop.model.php
  • 03 марта 2016 г.
  • Цитата
    Если Вы имеете ввиду shop.view.list.php, shop.view.show_block.php, то надо понимать как у Вас организовано использование данных файлов. По умолчанию конечно можно извратиться через глобальные переменные, но Вам скорее всего надо работать с shop.php и shop.model.php

    именно это и имел

    а что за извращения с глобальными переменными?
    • 03 марта 2016 г.
    • Хорошо, начну из далека. Вы задаете вопрос про переменные и их область видимости. Значит Вы что-то да знаете про php. Но так как у Вас вопрос
      Цитата
      можно ли как то передать значение переменной из shop.list в show.block и наоборот?
      , т.е. Вы имеете ввиду
      Цитата
      shop.view.list.php, shop.view.show_block.php
      , то у Вас явный пробел в понимании Концепции MVC (Model-View-Controller: модель-вид-контроллер). Т.е. рекомендую (если конечно Вам это надо) почитать хотя бы отдаленно, что такое MVC. Тогда Ваш вопрос отпадет сам собой.
      Если же нет желания выяснять, что такое MVC, то могу дать экспресс ответ: shop.php -> shop.model.php -> shop.view.list.php или shop.view.show_block.php. Т.е. организовывайте работу с переменными на уровне shop.php и shop.model.php. А на уровне shop.view.list.php или shop.view.show_block.php используйте переменные лишь для условий отображения, а не для определения и изменения их состояния.
  • 03 марта 2016 г.
  • Цитата
    Если Вы имеете ввиду shop.view.list.php, shop.view.show_block.php, то надо понимать как у Вас организовано использование данных файлов.

    Цитата
    именно это и имел
    а что за извращения с глобальными переменными?

    Все *.view.* - это шаблоны, т.е. чисто оформление. Там могут быть какие свои локальные переменные, но основное приходит из модели, т.е. из shop.model.php.
    То есть, это конечные точки, из них друг в друга ничего по-нормальному не передать. Это то же самое, что перепрыгивать с листочка на листочек на ветке, хотя надо вернуться к стволу и спокойно перейти на нужную ветку без прыжков.
    В доках начинать надо с http://www.diafan.ru/dokument/full-manual/developers/architecture/module/
    • 03 марта 2016 г. , редакция: 03 марта 2016 г.
    • М да, признаю. Что-то я замороченный чуть выше ответ дал. У Вас вышло в разы лучше и понятнее. Делаю вывод: пора мне отдохнуть! Только мучает вопрос: культурно отдохнуть или оторваться по полной.
  • 03 марта 2016 г.
  • Цитата
    У меня есть шаблон shop.list и в нём есть show.block
    можно ли как то передать значение переменной из shop.list в show.block и наоборот?

    Начните лучше с конкретики. Что именно нужно сделать на сайте, какой результат получить. И тогда можно нормально порекомендовать, какую переменную где лучше завести и куда передать

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум