handle form values correctly when form is re-displayed because of an error
This commit is contained in:
parent
32171a4e2d
commit
8acf5d8a65
2 changed files with 7 additions and 2 deletions
|
@ -159,7 +159,11 @@ class ObjectForm(NodeView):
|
||||||
for k, v in data.items():
|
for k, v in data.items():
|
||||||
#overwrite data with values from request.form
|
#overwrite data with values from request.form
|
||||||
if k in self.request.form:
|
if k in self.request.form:
|
||||||
data[k] = toUnicode(form[k])
|
field = self.schema.fields.get(k)
|
||||||
|
if field:
|
||||||
|
fi = field.getFieldInstance(self.instance)
|
||||||
|
data[k] = fi.marshall(fi.unmarshall(form[k]))
|
||||||
|
#data[k] = toUnicode(form[k])
|
||||||
return data
|
return data
|
||||||
|
|
||||||
@Lazy
|
@Lazy
|
||||||
|
|
|
@ -89,7 +89,8 @@ class RelationFieldInstance(FieldInstance, BaseRelationFieldInstance):
|
||||||
|
|
||||||
def marshall(self, value):
|
def marshall(self, value):
|
||||||
if value:
|
if value:
|
||||||
return dict(title=value.title, uid=util.getUidForObject(value.context))
|
return dict(title=value.title,
|
||||||
|
uid=util.getUidForObject(baseObject(value)))
|
||||||
|
|
||||||
def display(self, value):
|
def display(self, value):
|
||||||
if value:
|
if value:
|
||||||
|
|
Loading…
Add table
Reference in a new issue