Fix iteration on records
This commit is contained in:
parent
3eeae22838
commit
fa1110698e
|
|
@ -246,10 +246,12 @@ class ServerEnvMixin(models.AbstractModel):
|
|||
for record in self:
|
||||
for field_name, options in self._server_env_fields.items():
|
||||
if record._server_env_has_key_defined(field_name):
|
||||
self._compute_server_env_from_config(field_name, options)
|
||||
record._compute_server_env_from_config(field_name, options)
|
||||
|
||||
else:
|
||||
self._compute_server_env_from_default(field_name, options)
|
||||
record._compute_server_env_from_default(
|
||||
field_name, options
|
||||
)
|
||||
|
||||
def _inverse_server_env(self, field_name):
|
||||
options = self._server_env_fields[field_name]
|
||||
|
|
|
|||
|
|
@ -35,6 +35,26 @@ class TestServerEnvMixin(ServerEnvironmentCase):
|
|||
self.assertEqual(foo.password, 'bar')
|
||||
self.assertTrue(foo.ssl)
|
||||
|
||||
def test_env_computed_fields_read_multi(self):
|
||||
"""Read values in env-computed fields on several records"""
|
||||
public = (
|
||||
"[server_env_test]\n"
|
||||
"host=test.example.com\n"
|
||||
"port=21\n"
|
||||
"user=foo\n"
|
||||
)
|
||||
# we can create the record even if we didn't provide
|
||||
# the field host which was required
|
||||
foo = self.env['server.env.test'].create({
|
||||
'name': 'foo',
|
||||
})
|
||||
foo2 = self.env['server.env.test'].create({
|
||||
'name': 'foo2',
|
||||
})
|
||||
foos = foo + foo2
|
||||
with self.load_config(public):
|
||||
foos._compute_server_env()
|
||||
|
||||
def test_env_computed_fields_write(self):
|
||||
"""Env-computed fields without key in config can be written"""
|
||||
public = (
|
||||
|
|
|
|||
Loading…
Reference in New Issue