So I am creating a form builder. Users will login and then fillout the forms that Admins have created. I am using saveAll() in my "data_controller" "add" method. This works fine and and looks like this:\[code\]//debug($this->data); prints the following//app/controllers/data_controller.php (line 21)Array( [Datum] => Array ( [0] => Array ( [bool_val] => 1 [field_id] => 56 [form_id] => 208 [user_id] => 1 ) [1] => Array ( [bool_val] => 0 [field_id] => 64 [form_id] => 208 [user_id] => 1 ) ))// data_controller.php// the add method is like this function add() { debug($this->data); if (!empty($this->data) ) { $this->Datum->create(); if ($this->Datum->saveAll($this->data['Datum'])) { $this->Session->setFlash(__('The Datum has been saved', true)); $this->redirect(array('action'=>'index')); } else { $this->Session->setFlash(__('The Datum could not be saved. Please, try again.', true)); } } $forms = $this->Datum->Form->find('list'); $fields = $this->Datum->Field->find('list'); $users = $this->Datum->User->find('list'); $statuses = $this->Datum->Status->find('list'); $this->set(compact('forms', 'fields', 'users', 'statuses')); }\[/code\]So that works fine and creates a series of new entries in the "data" table of my MySQL database. My error comes when I try to use "saveAll()" in my "edit" method. I have googled and googled and googled with no luck. All of the articles say that my data structure should be correct, or that is how I am understanding them. So here is my view. It loops through to output checkboxes and other form elements but we will just look at a simple check box only example. \[code\]//field_view_datum.ctp<?php //debug($field_datum);switch ($field['Type']['name']) { case "check box" : echo "<p>"; echo $form->label($field['FieldName'][0]['name']); echo $form->hidden('Datum.'.$field_datum['id'].'.id', array('value' => $field_datum['id'])); echo $form->hidden('Datum.'.$field_datum['id'].'.form_id', array('value' => $formID)); echo $form->hidden('Datum.'.$field_datum['id'].'.field_id', array('value' => $field['id'])); echo $form->hidden('Datum.'.$field_datum['id'].'.user_id', array('value' => $userID)); $booly = ($field_datum['bool_val'] == 0) ? false : true; $options = array('checked' => $booly); echo $form->checkbox('Datum.'.$field_datum['id'].'.bool_val', $options); echo "</p>"; break;\[/code\]My view will output the following HTML to the browser. \[code\]<p> <label for="DatumFieldOne">Field One</label> <input type="hidden" id="Datum164Id" value="http://stackoverflow.com/questions/2063703/164" name="data[Datum][164][id]"/> <input type="hidden" id="Datum164FormId" value="http://stackoverflow.com/questions/2063703/208" name="data[Datum][164][form_id]"/> <input type="hidden" id="Datum164FieldId" value="http://stackoverflow.com/questions/2063703/56" name="data[Datum][164][field_id]"/> <input type="hidden" id="Datum164UserId" value="http://stackoverflow.com/questions/2063703/1" name="data[Datum][164][user_id]"/> <input type="hidden" value="http://stackoverflow.com/questions/2063703/0" id="Datum164BoolVal_" name="data[Datum][164][bool_val]"/> <input type="checkbox" id="Datum164BoolVal" value="http://stackoverflow.com/questions/2063703/1" checked="checked" name="data[Datum][164][bool_val]"/></p><p> <label for="DatumFieldTwo">Field Two</label> <input type="hidden" id="Datum165Id" value="http://stackoverflow.com/questions/2063703/165" name="data[Datum][165][id]"/> <input type="hidden" id="Datum165FormId" value="http://stackoverflow.com/questions/2063703/208" name="data[Datum][165][form_id]"/> <input type="hidden" id="Datum165FieldId" value="http://stackoverflow.com/questions/2063703/64" name="data[Datum][165][field_id]"/> <input type="hidden" id="Datum165UserId" value="http://stackoverflow.com/questions/2063703/1" name="data[Datum][165][user_id]"/> <input type="hidden" value="http://stackoverflow.com/questions/2063703/0" id="Datum165BoolVal_" name="data[Datum][165][bool_val]"/> <input type="checkbox" id="Datum165BoolVal" value="http://stackoverflow.com/questions/2063703/1" name="data[Datum][165][bool_val]"/></p>\[/code\]So then when I submit the form I get the following error:\[code\]Fatal error: Call to a member function getColumnType() on a non-object in /cake/libs/model/model.php on line 949\[/code\]The data I am passing and my controller method look like this:\[code\] //debug($this->data['Datum']); prints the following app/controllers/data_controller.php (line 39) Array ( [164] => Array ( [id] => 164 [form_id] => 208 [field_id] => 56 [user_id] => 1 [bool_val] => 1 ) [165] => Array ( [id] => 165 [form_id] => 208 [field_id] => 64 [user_id] => 1 [bool_val] => 1 ) )//data_controller.php function edit($formid = null) { debug($this->data['Datum']); if (!empty($this->data) ) { if ($this->Datum->saveAll($this->data['Datum'])) { $this->Session->setFlash(__('The Datum has been saved', true)); $this->redirect(array('controller' => 'forms', 'action'=>'index')); } else { $this->Session->setFlash(__('The Datum could not be saved. Please, try again.', true)); $this->redirect(array('controller' => 'forms', 'action'=>'view', 'id' => '$formid')); } } }\[/code\]Any help that you can give would be much appreciated I have done tons of searching and not found the correct answer. Sorry if this post is a bit long winded.Thanks,Devin[EDIT]In case you need to look at my model or my table structure. \[code\]//Model //datum.php // a basic model nothing unusual here <?php class Datum extends AppModel { var $name = 'Datum'; var $belongsTo = array( 'Form' => array( 'className' => 'Form', 'foreignKey' => 'form_id', 'conditions' => '', 'fields' => '', 'order' => '' ), 'Field' => array( 'className' => 'Field', 'foreignKey' => 'field_id', 'conditions' => '', 'fields' => '', 'order' => '' ), 'User' => array( 'className' => 'User', 'foreignKey' => 'user_id', 'conditions' => '', 'fields' => '', 'order' => '' ), 'Status' => array( 'className' => 'Status', 'foreignKey' => 'status_id', 'conditions' => '', 'fields' => '', 'order' => '' ) ); } ?> //this is from my latest schema snapshot var $data = http://stackoverflow.com/questions/2063703/array('id' => array('type' => 'integer', 'null' => false, 'default' => NULL, 'key' => 'primary'), 'form_id' => array('type' => 'integer', 'null' => true, 'default' => NULL), 'field_id' => array('type' => 'integer', 'null' => true, 'default' => NULL), 'user_id' => array('type' => 'integer', 'null' => true, 'default' => NULL), 'status_id' => array('type' => 'integer', 'null' => true, 'default' => NULL), 'value' => array('type' => 'text', 'null' => true, 'default' => NULL), 'file_path' => array('type' => 'string', 'null' => true, 'default' => NULL), 'bool_val' => array('type' => 'boolean', 'null' => true, 'default' => '0'), // I am using MySQL so this is a tinyint(1) 'created' => array('type' => 'datetime', 'null' => true, 'default' => NULL), 'modified' => array('type' => 'datetime', 'null' => true, 'default' => NULL), 'indexes' => array('PRIMARY' => array('column' => 'id', 'unique' => 1)) ); \[/code\][EDIT]So I did as one Poster suggested and this is what I got when putting "debug($model);" on cake/libs/model/model.php (line 949): \[code\]cake/libs/model/model.php (line 949)data //this being what debug() returnsFatal error: Call to a member function getColumnType() on a non-object in /cake/libs/model/model.php on line 950\[/code\]I might see what is wrong my model name is Datum or datum.php not data I have no obvious solution in my head, this is a bit deep in Cake for me. Any Suggestions?I just took a look at my "view" method with the same debug statement and it outputs "Datum" and not "data" like I get from my "edit" method. Just in case that is helpful to anyone.