Hi!
I'm just learning xPDO and I've used MIGX to create my model classes. The database tables I had already created in advance and contain some data. My schema file is below. I can successfully add the package but when I try to getCollection it returns an empty array. What am I doing wrong?
Thanks in advance!
$path = MODX_CORE_PATH."components/deanGradList/";
if(!$modx->addPackage("deanGradList",$path."model/","ttu_"))
return "<p>Failed to add package.</p>";
$terms = $modx->getCollection("NameslistSemester");
$output .= "<p>Items: ".count($terms)."</p>";
var_dump($terms);
return $output;
Output:
array(0) { }
Items in collection: 0
<?xml version="1.0" encoding="UTF-8"?>
<model package="deanGradList" baseClass="xPDOObject" platform="mysql" defaultEngine="MyISAM" version="1.1">
<object class="Nameslist" table="_nameslist" extends="xPDOSimpleObject">
<field key="firstname" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="middlename" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="lastname" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="city" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="county" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="state" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="termcode" dbtype="varchar" precision="250" phptype="string" null="false" />
<field key="category" dbtype="varchar" precision="250" phptype="string" null="false" />
</object>
<object class="NameslistSemester" table="_nameslist_semester" extends="xPDOObject">
<field key="termcode" dbtype="varchar" precision="6" phptype="string" null="false" index="pk" />
<field key="description" dbtype="varchar" precision="20" phptype="string" null="false" />
<field key="published" dbtype="tinyint" precision="1" phptype="integer" null="false" default="0" />
<index alias="PRIMARY" name="PRIMARY" primary="true" unique="true" type="BTREE" >
<column key="termcode" length="" collation="A" null="false" />
</index>
</object>
</model>
Also, if it helps, the CREATE TABLEs for both tables:
CREATE TABLE IF NOT EXISTS `ttu_nameslist_semester` (
`termcode` varchar(6) NOT NULL,
`description` varchar(20) NOT NULL,
`published` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`termcode`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `ttu_nameslist` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`firstname` varchar(250) NOT NULL,
`middlename` varchar(250) NOT NULL,
`lastname` varchar(250) NOT NULL,
`city` varchar(250) NOT NULL,
`county` varchar(250) NOT NULL,
`state` varchar(250) NOT NULL,
`termcode` varchar(250) NOT NULL,
`category` varchar(250) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4646 ;
[ed. note: dwillis210 last edited this post 13 years, 8 months ago.]