Я согласен, что документация может быть немного запутанной.Рассмотрение других расширений, как предположил Дэмиен Пирси, может быть действительно полезным.Однако, по моему опыту, другие расширения имеют тенденцию к фристайлу и не соответствуют стандартам Joomla (например, Community Builder).Я предлагаю взглянуть на встроенные компоненты, такие как com_contacts и com_weblinks.
Удаление кода поля на самом деле не сломает внешний интерфейс.Это потому, что (по крайней мере в части 6) поле используется только в бэкэнде (администратор).Прямо под пояснением кода поля есть строка:
"Вы можете увидеть результат этого изменения в разделе менеджера меню для элемента helloworld."
Вы поймете, что удаление кода поля нарушает редактирование вашего пункта меню.
Когда вызывается getTable (), он создает новый экземпляр вашего класса Table.Ваш табличный код может быть очень коротким, потому что родительский класс (JTable) позаботится о загрузке / сохранении и т. Д. JTable нужно только знать, каково имя вашей таблицы и имя вашего основного ключа (id).Вы передаете эти данные в конструкторе таблицы, вызывая:
parent::__construct('#__helloworld', 'id', $db);
Если вы хотите загрузить список элементов из базы данных, JTable обычно не используется.Вместо этого смотрите JModelList.См. Использование веб-ссылок ModelList .
И да, несколько файлов в папке вашей таблицы будут полезны, если вы получили более одной таблицы.