我使用以下代码来加载一个类别的记录:
$res = JTable::getInstance('category');
$res->load(array('id' => $catid));
现在我想根据标题加载记录,这将与SQL类模式匹配-是否有可能用JTable的简单方式做到这一点,或者我需要$dbo?
据我所知,JTable被设计得很简单,每次只携带一个元素,并且通过主键。如果你真的想要更高级的东西,我建议你使用JDatabaseQuery的方式。
// Get a db connection.
$db = JFactory::getDbo();
// Create a new query object.
$query = $db->getQuery(true);
// Select all articles for users who have a username which starts with 'a'.
// Order it by the created date.
$query
->select(array('a.*', 'b.username', 'b.name'))
->from('#__content AS a')
->join('INNER', '#__users AS b ON (a.created_by = b.id)')
->where('b.username LIKE 'a%'')
->order('a.created DESC');
// Reset the query using our newly populated query object.
$db->setQuery($query);
// Load the results as a list of stdClass objects.
$results = $db->loadObjectList();
在您的情况下,而不是"$db->loadObjectList();"您可以使用"$db->loadObject();"来加载一个项目。
来源:http://docs.joomla.org/Accessing_the_database_using_JDatabase/3.1