为什么不推荐使用 Joomla 3 的 JModelBase?应该用什么代替?

Why is Joomla 3's JModelBase deprecated? What should be used instead?

Joomla 3 引入了一个新的 MVC 类 描述在这里 Joomla MVC manual but the classes seem to be deprecated now (for example: JModelBase class docs) 我不知道我应该用什么来为 Joomla 3 开发一个 MVC 组件。哪个基础 类应该使用?

如果您查看 Jooma 3.0 的一些核心扩展,您会发现从 3.9.14 开始,它们在横幅组件中使用了以下内容:

站点:

  • 项目- JModelLegacy
  • 列表 - JModelList

管理员

  • 项目- JModelAdmin
  • 列表 - JModelList

但是,由于 Joomla 4 即将推出并且更新版本的 joomla 3 支持它,我会使用新的 类:

站点:

  • 项目- class <Component>Model<Section> extends \Joomla\CMS\MVC\Model\ItemModel
  • 表格 - class <Component>Model<Section>Form extends \Joomla\CMS\MVC\Model\FormModel
  • 列表 - class <Component>Model<Sections> extends \Joomla\CMS\MVC\Model\ListModel

管理员:

  • 项目- class <Component>Model<Section> extends \Joomla\CMS\MVC\Model\AdminModel
  • 列表 - class <Component>Model<Sections> extends \Joomla\CMS\MVC\Model\ListModel

另见 Joomla 3 MVC component docs

Joomla API Docs