Новости Joomla

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

NastyUser

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Мой компонент называется com_record, представление по умолчанию мне нужно Records. В com_record/controller.php пишу следующее:
Код
	<?php
defined('_JEXEC') or die('Restricted access');
jimport('joomla.application.component.controller');

class RecordController extends JControllerLegacy
{
public function display($cachable=false, $urlparams=false)
{
$n_view=JRequest::getCmd('view','Records');
JRequest::SetVar('view',$n_view);
parent::display($cachable,$urlparams);
}
}
?>

Но view устанавливается в 'record'. Почему? Приходится извращаться и писать
Код
		if ($n_view=='record') $n_view='Records';

Без этой строчки я получаю ошибку: Представление не найдено [name, type, prefix]: record, HTML, recordView
Нужное представление соответственно RecordViewRecords.
« Последнее редактирование: 11.01.2014, 01:51:02 от NastyUser »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
*

NastyUser

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
А если у меня появятся еще какие-то представления кроме этого?
*

b2z

  • Глобальный модератор
  • 7287
  • 778 / 0
  • Разраблю понемногу
А если у меня появятся еще какие-то представления кроме этого?
Ну так это регулируется потом, через параметр view. В общем виде представление по умолчанию устанавливается так:
Код: php
$input = JFactory::getApplication()->input;
$input->set('view', $input->getCmd('view', 'Records'));

А дальше в ссылке (или в скрытом поле, если это форма) вы передаете параметр view, например:
Код: php
JRoute::_('index.php?option=com_records&view=record');
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
А кто мешает вообще так написать:
Код: php
function display( $cachable = false, $urlparams = array())
{
$this->default_view = 'records';
parent::display( $cachable, $urlparams);
}
*

b2z

  • Глобальный модератор
  • 7287
  • 778 / 0
  • Разраблю понемногу
Ну да, можно и так. Только $this->default_view = 'records'; лучше делать в конструкторе, чтобы представление по умолчанию устанавливалось не только в методе display(), а было доступно для всего объекта.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Компонента от j1.5 под j2.5

Автор limon142

Ответов: 4
Просмотров: 1673
Последний ответ 19.11.2014, 13:43:25
от limon142
Подключить свою таблицу CSS в редактор (на фор

Автор Aeliot

Ответов: 2
Просмотров: 1397
Последний ответ 11.12.2013, 18:28:13
от Aeliot
Переадресация на форму авторизации

Автор Aeliot

Ответов: 4
Просмотров: 1454
Последний ответ 07.12.2013, 14:21:55
от Aeliot
Разные методы, суть одна и таже?

Автор boomerang

Ответов: 3
Просмотров: 1550
Последний ответ 11.04.2013, 00:23:30
от Aleks.Denezh
Как сохраняются данные в БД любого компон

Автор boomerang

Ответов: 8
Просмотров: 2358
Последний ответ 06.03.2013, 01:46:22
от b2z