forked from Techsystech/web
[FIX] web_field_required_invisible_manager: decode only bytes
parent
f10d72999d
commit
1fba800970
|
@ -52,7 +52,7 @@ class Base(models.AbstractModel):
|
||||||
return arch
|
return arch
|
||||||
|
|
||||||
def process_child_fields(self, arch, view_type):
|
def process_child_fields(self, arch, view_type):
|
||||||
"""Collect all relational fields and update its views"""
|
"""Collect all relational fields and update their views"""
|
||||||
related_fields = [
|
related_fields = [
|
||||||
(k, v.comodel_name) for k, v in self._fields.items() if v.comodel_name
|
(k, v.comodel_name) for k, v in self._fields.items() if v.comodel_name
|
||||||
]
|
]
|
||||||
|
@ -80,7 +80,8 @@ class Base(models.AbstractModel):
|
||||||
z_arch = self.create_restrictions_fields(
|
z_arch = self.create_restrictions_fields(
|
||||||
restr, view_type, z_arch
|
restr, view_type, z_arch
|
||||||
)
|
)
|
||||||
z_arch["arch"] = z_arch["arch"].decode("utf-8")
|
if type(z_arch["arch"]) is bytes:
|
||||||
|
z_arch["arch"] = z_arch["arch"].decode("utf-8")
|
||||||
name_manager = NameManager(False, self.env[restr.model_name])
|
name_manager = NameManager(False, self.env[restr.model_name])
|
||||||
if restr.readonly_field_id and restr.readonly_model_id:
|
if restr.readonly_field_id and restr.readonly_model_id:
|
||||||
model_field_infos = name_manager.fields_get.get(
|
model_field_infos = name_manager.fields_get.get(
|
||||||
|
|
|
@ -121,6 +121,7 @@ class TestFieldRequiredIvisibleManager(common.SavepointCase):
|
||||||
"<field name='name'/></tree>",
|
"<field name='name'/></tree>",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
cls.view_users_form_arch_orig = cls.view_users_form.arch
|
||||||
cls.view_users_form.arch = cls.view_users_form.arch.replace(
|
cls.view_users_form.arch = cls.view_users_form.arch.replace(
|
||||||
"</notebook>",
|
"</notebook>",
|
||||||
"</notebook><field name='company_ids'><tree><field name='city'/>"
|
"</notebook><field name='company_ids'><tree><field name='city'/>"
|
||||||
|
@ -220,3 +221,11 @@ class TestFieldRequiredIvisibleManager(common.SavepointCase):
|
||||||
self.assertTrue(self.invisible_title_rec_id.required)
|
self.assertTrue(self.invisible_title_rec_id.required)
|
||||||
# unlink
|
# unlink
|
||||||
self.invisible_rec_id.unlink()
|
self.invisible_rec_id.unlink()
|
||||||
|
# case when child view has no fields
|
||||||
|
self.view_users_form.arch = self.view_users_form_arch_orig
|
||||||
|
self.view_users_form.arch = self.view_users_form.arch.replace(
|
||||||
|
"</notebook>",
|
||||||
|
"</notebook><field name='company_ids'><form><br/></form></field>",
|
||||||
|
)
|
||||||
|
self.env.user.fields_view_get(view_id=self.view_users_form.id, view_type="form")
|
||||||
|
self.env.user.fields_view_get(view_id=self.view_users_tree.id, view_type="tree")
|
||||||
|
|
Loading…
Reference in New Issue