David,
I followed your examples but still cannot get what I want.
> I don't know why it is letting you define it the first time around, but
> you certainly don't want to be doing that. Like the error message
> says, it isn't thread safe. Pass the default at display time:
>
> return dict( ....
> form = model_form,
> defaults = dict(<fieldname>=reachID.id),
> ...
>
> )
>
My controller:
return dict(modelname = self.modelname,
record = record,
form = model_form, defaults =
dict(Reach=reachID.id),
tg_paginate_limit=tg_paginate_limit,
tg_paginate_no=tg_paginate_no,rootDir=self.rootDir)
> and then in your template:
>
> ${form(record, default=defaults)}
>
My template:
${form(record, default=defaults)}
Generated Source:
<select id="form_Reach" name="Reach"
class="singleselectfield">
<option value="454">AB-1</option><option value="455">AB-3</
option><option value="456">AD-1</option><option value="457">AD-2</
option><option value="458">AD-3</option><option value="459">AD-4</
option><option value="460">AL-1</option><option value="461">AN-1</
option><option value="462">AND-1</option><option value="463">AND-2</
option><option value="464">AND1</option><option value="465">ARN-1</
option><option value="466">ARN-2</option><option value="467">ARN-3</
option><option value="468">ARN-4</option><option value="469">BAK-2</
option><option value="470">BAR-1</option><option value="471">BAR-2</
option><option value="472">BAR-3</option><option value="473">BEH-1</
option><option value="474">BEH-2</option><option value="475">BEH-3</
option><option value="476">BEH-6</option><option value="477">BEL-1</
option><option
I even tried to hardcode the value in the template like this:
<?python defaults=dict(Reach=476) ?>
${form(record, default=defaults)}
but I still come up empty.
If I change the controller and set a default in there it works but I
cannot change the default afterward.
class SerialReachFields(WidgetsList):
serialnumber = Label("Serial Number")
reach=SingleSelectField("Reach", options=lambda: [(t.id, t.reach)
for t in Reach.select()], default=476)
Result:
<select id="form_Reach" name="Reach"
class="singleselectfield">
<option value="454">AB-1</option><option value="455">AB-3</
option><option value="456">AD-1</option><option value="457">AD-2</
option><option value="458">AD-3</option><option value="459">AD-4</
option><option value="460">AL-1</option><option value="461">AN-1</
option><option value="462">AND-1</option><option value="463">AND-2</
option><option value="464">AND1</option><option value="465">ARN-1</
option><option value="466">ARN-2</option><option value="467">ARN-3</
option><option value="468">ARN-4</option><option value="469">BAK-2</
option><option value="470">BAR-1</option><option value="471">BAR-2</
option><option value="472">BAR-3</option><option value="473">BEH-1</
option><option value="474">BEH-2</option><option value="475">BEH-3</
option><option selected value="476">BEH-6</option><option
value="477">BEL-1</option>
Anything else to look at?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/turbogears?hl=en
-~----------~----~----~----~------~----~------~--~---