Skip to content

default_box_create_on_get=False should still create keys on assigment #274

@wrdls

Description

@wrdls

As reported before in #164 (comment)

The current behavior of default_box_create_on_get is not what you would expect and eliminates a large part what makes default_box useful in the first place.

In the following case I would still expect b.foo.bar to be set to 1.

>>> b = Box(default_box=True, default_box_create_on_get=False)
>>> b.foo.bar
Box({})
>>> b.foo.bar = 1
>>> b.foo.bar
Box({})
>>> b
Box({})

Not sure if this is feasible, but a new config option default_box_create_on_set could be added to control this behavior.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions