Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 2417 Просмотров
*

adamatis

  • Новичок
  • 7
  • 0 / 0
Столкнулся с простейшим действием, которое оказалось не по силам для самостоятельного решения.
Убил 3 дня уже.
Суть проблемы:
есть модель models/catalog.php, в ней определены 2 геттера:
Код
        public function getItem() 
{
/*тут запрос в бд и обработка данных*/
return $this->item;
}

public function getManufactures()
{
                /*тут запрос в бд и обработка данных*/
return $this->factorys;
}
Так вот во вьюшке: views/catalog/view.html.php запрос
Код
$this->item = $this->get('Items');
отрабатывает без проблем
Создал другую вьюшку: views/factorys/view.html.php в нем делаю запросы:
Код
$this->items = $this->get('Items');
$this->factorys = $this->get('Manufactures');
не возвращает данных ни первый, ни второй запрос.
Пробовал создавать модель models/manufactures.php, а там уже писать и getItems и getManufactures - результата нет.
В многочисленных туториалах только один геттер, не смог найти такое решение, подскажите пожалуйста, в чем моя ошибка? Может я впринципе неправильно понимаю принцип работы Joomla3. Раньше у меня никогда подобных проблем не возникало.
« Последнее редактирование: 14.08.2013, 14:46:42 от adamatis »
*

adamatis

  • Новичок
  • 7
  • 0 / 0
дополнение:
оба геттера модели работают из стандартной вьюшки:  views/catalog/view.html.php
а вот из другой вьюшки( views/factorys/view.html.php ) не вызывается ни один.
Получается модель не подключается или что?
Есть вариант сделать вторую вьюшку как отдельный компонент, но это бред какой-то
*

prometheus

  • Захожу иногда
  • 84
  • 7 / 0
Потому что та вьюшка где все работает называется также как и модель и поэтому автоматически их Joomla связывает и работает. В ином случае надо делать подключение другой модели инициализацию объекта и вызов этих методов.
*

adamatis

  • Новичок
  • 7
  • 0 / 0
не могли бы вы чуть подробней описать этот процесс? ну или хотя бы ткнуть, где это описано.
Не особо понимаю где нужно делать эту инициализацию
*

Aleks.Denezh

  • Живу я здесь
  • 3406
  • 428 / 4
MVC это модель вид и контроллер!
смотрите есть вид MyComponentViewMyView{}
в нем вызвав метод $this->data = $this->get('MetodName');
вы обратитесь только к модели которая будет иметь имя myview.php и класс у модели должен быть MyComponentModelMyView
если у вас есть метод который используется в двух и более разных моделях и вы не хотите их дублировать то для этого существует помощник вида файл в папке heplers/
*

adamatis

  • Новичок
  • 7
  • 0 / 0
Спасибо, решение найдено, наконец-то)))))
---------------------------------------------------
решение простое - надо было создать одноименную с видом модель.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как и чем можно обращаться с запросами из Joomla к GraphQL?

Автор bmf1982

Ответов: 0
Просмотров: 616
Последний ответ 03.10.2019, 15:46:00
от bmf1982
Joomla как система авторизации

Автор kav

Ответов: 23
Просмотров: 2295
Последний ответ 29.04.2018, 11:10:30
от Aleks.Denezh
Нужна помощь в доработке модуля под Joomla 3

Автор kik84

Ответов: 5
Просмотров: 2278
Последний ответ 30.01.2018, 22:40:30
от Елeна
Как в модели ограничить количество выводимых материалов для каждой категории?

Автор fbr

Ответов: 12
Просмотров: 1300
Последний ответ 05.09.2015, 23:43:47
от robert
Как отучить Joomla стартовать session для гостей?

Автор commeta

Ответов: 8
Просмотров: 2906
Последний ответ 20.08.2015, 14:06:38
от acyp