Опечатки в коде MVC для Joomla 1.5

Вы пишете компоненты или плагины для Joomla? Этот пост для вас. Поймали ошибку, описанную здесь? Добро пожаловаться!

Летят самолеты - салют!

При разработке очередного компонента под Joomla 1.5 столкнулся с такой ошибкой:

Warning: Missing argument 2 for JTable::__construct(), called in /var/www/site/httpdocs/libraries/joomla/database/table.php on line 115 and defined in /var/www/site/httpdocs/libraries/joomla/database/table.php on line 65

А также

Missing argument 3 for JTable
и
Undefined variable: key in /var/www/site/httpdocs/libraries/joomla/database/table.php on line 68

Как выяснилось, ошибки возникали из-за невнимательности при написании файла – описателя таблиц.
Обратите внимание в таких файлах (пример "/mycomponent/tables/mytable.php") Имя  конструктора должно совпадать с именем класса:

class TableMytable extends JTable
{
    var $id = null;
    var $myvar = "";
 
    function TableMytable(& $db) {
       parent::__construct('#__mytable', 'id', $db);
    }
}

Вот здесь обратите внимание на "TableMytable": и в случае имени класса, и в случае имени конструктора должно использоваться одно и то же имя. Ну и разумеется, имя таблицы должно быть соответствующим: "#__mytable"

Разумеется, это относится не только к компонентам для cms Joomla, но и вообще к любому случаю применения классов.

Забавная японская реклама:

Вы можете оставить комментарий , или использовать trackback - ссылки с вашего сайта.

2 комментария to “Опечатки в коде MVC для Joomla 1.5”

  1. Да, действительно. Так бывает. Давайте обсудим этот вопрос. Здесь или в PM.

  2. Опечатки в коде MVC для Joomla 1.5 – http://webtalk.su/opechatki-v-kode-mvc-d...
    via Twitoaster

Оставить комментарий

Читать RSS в Google

Добавить в Google Reader

Читать RSS в Яндексе

Добавить в Яндекс-ленту

Rambler's Top100