【问题标题】:How to access contacts in Joomla via JTable?如何通过 JTable 访问 Joomla 中的联系人?
【发布时间】:2015-12-07 03:49:30
【问题描述】:
我仍在处理我的组件,目前正在尝试添加、编辑和删除联系人。我发现它们位于contact_details。使用 JFactory::getDBO() 访问它们是有效的。文档说,使用 JTable 更安全,也是使用数据库的预期方式。
使用 JTable::getInstance('contact_details') 会导致错误提示,'contact_details' is not supported。有没有办法使用 JTable 访问contact_details?我是否必须创建一个自定义表才能使其正常工作?
提前致谢!
【问题讨论】:
标签:
database
joomla
contact
dbo
joomla-jtable
【解决方案1】:
JTable::getInstance() 的参数不是数据库表的名称而是表类的名称。在这种情况下,如果您查看/administrator/components/com_contant/tables,您会看到表类名称为ContactTableContact,这是Joomla 中表的常规模式!其中第一个表给出了位置(API 将剥离com_,第二个表示它是一个表类并且在表或表文件夹中(后者是旧的),最后一段是文件的名称。所以JTable::getInstance('ContactTableContact') 应该为你解决问题。