Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 29 мар 2024, 13:57

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Подскажите простой пример widget
СообщениеДобавлено: 12 авг 2013, 11:31 
Не в сети
Новичок

Зарегистрирован: 28 июн 2013, 17:23
Сообщения: 18
Доброго времени суток.
Братцы, подскажите простой пример widget (hmvc).
Почитал несколько примерав, но ничего не понял (туплю))))
За ранее спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подскажите простой пример widget
СообщениеДобавлено: 12 авг 2013, 12:03 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
Суть: получение контента контроллера через запрос.

Хэлпер: http://forum.kohanaframework.su/viewtopic.php?f=31&t=705#p4172

Задача: вывести блок с n-ым кол-вом последних новостей.
1. Создаем контроллер формирующий данный блок:
Код:
class Controller_News_Short extends Controller_Template
{
   public $template = 'news/short';
   public function action_index()
  {
      $limit = (int) $this->request->query('limit');
      // код получения новостей из базы
   }
}


2. В Виде в нужном месте добавляем виджет, массивом передаем GET параметры запроса:
Код:
<?php echo CMS::widget('news/short/index', array('limit' => 10))  ?>


3. Ну и создаем Вид виджета view/news/short.html

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Последний раз редактировалось WinterSilence 12 авг 2013, 15:21, всего редактировалось 3 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подскажите простой пример widget
СообщениеДобавлено: 12 авг 2013, 14:21 
Не в сети
Новичок

Зарегистрирован: 28 июн 2013, 17:23
Сообщения: 18
WinterSilence писал(а):
Суть: получение контента контроллера через запрос.

Хэлпер: http://forum.kohanaframework.su/viewtopic.php?f=31&t=705#p4172

Задача: вывести блок с n-ым кол-вом последних новостей.
1. Создаем контроллер формирующий данный блок блок:
Код:
class Controller_News_Short extends Controller_Template
{
   public $template = 'news/short';
   public function index()
  {
      $limit = (int) $this->request->query('limit');
      // код получения новостей из базы
   }
}


2. В Виде в нужном месте добавляем виджет, массивом передаем GET параметры запроса:
Код:
<?php echo CMS::widget('news/short', array('limit' => 10))  ?>


3. Ну и создаем Вид виджета view/news/short.html

Спасибо ;)
Удачных удач :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подскажите простой пример widget
СообщениеДобавлено: 12 авг 2013, 14:58 
Не в сети
Новичок

Зарегистрирован: 28 июн 2013, 17:23
Сообщения: 18
Сорри, раз 5 перечитал, всеравно не понял.
А не сталкивались с таким примерам -
1. Делаем это (пример кода)
2. Затем это ....
И так далее.
Пусть это будет пример "Hello, World!"
Всеравно спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подскажите простой пример widget
СообщениеДобавлено: 12 авг 2013, 15:18 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
что конкретно не понятно? если совсем и все, то значит еще рано и надо дочитать уроки на этом сайте до конца

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подскажите простой пример widget
СообщениеДобавлено: 16 авг 2013, 13:22 
Не в сети
Новичок

Зарегистрирован: 28 июн 2013, 17:23
Сообщения: 18
Вот, как вариант, нашел отвкт на свой вопрос - ...простой пример widget
Может кому поможет :D
Не понятно почему еще никто модуль не своял?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подскажите простой пример widget
СообщениеДобавлено: 16 авг 2013, 16:18 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
Пример, приведенный в ссылке, содержит ошибки, не пытайтесь его использовать "как есть".

Модуль особо не нужен, я использую специфический контроллер https://github.com/WinterSilence/parts- ... Widget.php + приведенный выше метод-хэлпер, ну и роут аналогичный конечно.

Цитата:
Чтоб пользователь не мог напрямую через url типа http://site.com/widget/MainMenu обратиться к виджету

Эту фишку стоит либо вообще убрать, либо сделать опциональной т.к. встраивание виджетов в другие сайты очень распространено - http://www.webasyst.ru/widgets/ . Кроме того, проще сразу вызвать исключение вместо $this->auto_render = FALSE; т.к. работа action в случае внешнего вызова всё равно вызовет ошибку.

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group