extjs

ExtJs Direct - Not enough required params or this.form is undefined

{"type":"exception","tid":4,"message":"Not enough required params specified for method: loadForm  on class ClassNameHere"
}

If you are getting errors like this check firebug to make sure you are sending the data. I was not sending the data because I keep forgetting to set 'paramorder' or 'paramsasHash' on the form config.

ExtJS ext.data.jsonwriter and cakephp

Just spent quite abit of time getting an EditorGrid properly creating and updating rows automagically using Ext Writer. Except it wasn't so magical.
Notes:
- Create requires success: true and then the created record (including the id).
Use this snippet:
echo '{"success":'.$success.', results:'.$javascript->Object($record).'}';
in the above results should be whatever your roots property is in your store reader config. For example:
                reader: new Ext.data.JsonReader({
                        totalProperty: 'total',
                        successProperty: 'success',
                        root: 'results',
                        idProperty: 'id', etc
Example of working create json string:
{"success":true, results:{"id":"47","jobId":"47","jobType":"7",
"partName":"0101012","partDescription":"3.0 Metre Crossover Network Cable",
"quantity":"1","price":"3.5"}}
Example of working update json string:
{success:true, id:11}
After an update you can use $this->MODELNAME->id to get the id for the json.
Destroy just needs
{success:true}
Read example (all records for grid):
{"total":2, "results":[{"id":"46","jobId":"47","jobType":"7",
"partName":"0101104","partDescription":"Dual Back Box","quantity":"1","price":"4.26"},{"id":"47","jobId":"47","jobType":"7",
"partName":"0101012","partDescription":"3.0 Metre Crossover Network Cable","quantity":"1","price":"3.5"}]}

Just wasted 20 minutes looking for whitespace...

I just wasted 20 minutes going through files looking for a white space that was causing "headers already sent" error message on login. I finally found it BEFORE the <? (i was looking at the ?> end).

Grrr....

Syndicate content