I'm getting the "Error Creating Field" now too, but the underlying error is different from what you've posted.
In the console, I'm getting this:
Failed to load resource: the server responded with a status of 500 (Error: "Couldn't run query: INSERT INTO "EditableFormField_versions" ("ClassName", "CanDelete", "LastEdited", "Created", "Name", "Title", "Default", "Sort", "Required", "CustomErrorMessage", "CustomRules", "CustomSettings", "ParentID", "ShowOnLoad", "Version", "CustomParameter", "RecordID", "AuthorID") VALUES ('EditableDropdown', '1', '2010-06-17 15:02:25', '2010-06-17 15:02:25', null, null, null, '0', '0', null, null, null, '0', '0', 1, null, 42, 1) Unknown column 'ShowOnLoad' in 'field list'" at line 536 of /Applications/MAMP/htdocs/sapphire/core/model/MySQLDatabase.php)
ShowOnLoad looks like it comes from EditableFormField on line 28
static $defaults = array(
"CanDelete" => "1",
"ShowOnLoad" => "1"
);
My EditableFormField table has a ShowOnLoad column, but EditableFormField_versions and EditableFormField_Live do not.
I've rebuilt the database, but it hasn't helped.
Manually adding the column ShowOnLoad to the EditableFormField_versions table seems to have fixed the problem. This seems like a less-than-optimal situation.
Another oddity I've noticed is that the wiki says there might be problems if you have a 'CustomParameter' column in your EditableFormField tables, but I don't see how it could work without it. ( see http://doc.silverstripe.org/upgrading:2.4.0#user-defined_forms )
Here's the entire error message:
ERROR [User Error]: Couldn't run query:
INSERT INTO "EditableFormField_versions" ("ClassName", "CanDelete", "LastEdited", "Created", "Name", "Title", "Default", "Sort", "Required", "CustomErrorMessage", "CustomRules", "CustomSettings", "ParentID", "ShowOnLoad", "Version", "CustomParameter", "RecordID", "AuthorID") VALUES ('EditableDropdown', '1', '2010-06-17 15:02:25', '2010-06-17 15:02:25', null, null, null, '0', '0', null, null, null, '0', '0', 1, null, 42, 1)
Unknown column 'ShowOnLoad' in 'field list'
IN GET /admin/EditForm/field/Fields/addfield?NewID=1&Type=EditableDropdown
Line 536 in /Applications/MAMP/htdocs/sapphire/core/model/MySQLDatabase.php
Source
======
527: }
528:
529: function databaseError($msg, $errorLevel = E_USER_ERROR) {
530: // try to extract and format query
531: if(preg_match('/Couldn\'t run query: ([^\|]*)\|\s*(.*)/', $msg, $matches)) {
532: $formatter = new SQLFormatter();
533: $msg = "Couldn't run query: \n" . $formatter->formatPlain($matches[1]) . "\n\n" . $matches[2];
534: }
535:
* 536: user_error($msg, $errorLevel);
537: }
538:
539: /**
540: * Return a boolean type-formatted string
541: *
542: * @param array $values Contains a tokenised list of info about this data type
Trace
=====
<ul>user_error(Couldn't run query:
INSERT INTO "EditableFormField_versions" ("ClassName", "CanDelete", "LastEdited", "Created", "Name", "Title", "Default", "Sort", "Required", "CustomErrorMessage", "CustomRules", "CustomSettings", "ParentID", "ShowOnLoad", "Version", "CustomParameter", "RecordID", "AuthorID") VALUES ('EditableDropdown', '1', '2010-06-17 15:02:25', '2010-06-17 15:02:25', null, null, null, '0', '0', null, null, null, '0', '0', 1, null, 42, 1)
Unknown column 'ShowOnLoad' in 'field list',256)
line 536 of MySQLDatabase.php
MySQLDatabase->databaseError(Couldn't run query: INSERT INTO "EditableFormField_versions" ("ClassName", "CanDelete", "LastEdited", "Created", "Name", "Title", "Default", "Sort", "Required", "CustomErrorMessage", "CustomRules", "CustomSettings", "ParentID", "ShowOnLoad", "Version", "CustomParameter", "RecordID", "AuthorID") VALUES ('EditableDropdown', '1', '2010-06-17 15:02:25', '2010-06-17 15:02:25', null, null, null, '0', '0', null, null, null, '0', '0', 1, null, 42, 1) | Unknown column 'ShowOnLoad' in 'field list',256)
line 134 of MySQLDatabase.php
MySQLDatabase->query(INSERT INTO "EditableFormField_versions" ("ClassName", "CanDelete", "LastEdited", "Created", "Name", "Title", "Default", "Sort", "Required", "CustomErrorMessage", "CustomRules", "CustomSettings", "ParentID", "ShowOnLoad", "Version", "CustomParameter", "RecordID", "AuthorID") VALUES ('EditableDropdown', '1', '2010-06-17 15:02:25', '2010-06-17 15:02:25', null, null, null, '0', '0', null, null, null, '0', '0', 1, null, 42, 1))
line 583 of Database.php
SS_Database->manipulate(Array)
line 139 of DB.php
DB::manipulate(Array)
line 1048 of DataObject.php
DataObject->write()
line 192 of FieldEditor.php
FieldEditor->addfield(SS_HTTPRequest)
line 134 of RequestHandler.php
RequestHandler->handleRequest(SS_HTTPRequest)
line 152 of RequestHandler.php
RequestHandler->handleRequest(SS_HTTPRequest)
line 152 of RequestHandler.php
RequestHandler->handleRequest(SS_HTTPRequest)
line 147 of Controller.php
Controller->handleRequest(SS_HTTPRequest)
line 283 of Director.php
Director::handleRequest(SS_HTTPRequest,Session)
line 127 of Director.php
Director::direct(/admin/EditForm/field/Fields/addfield)
line 127 of main.php