customize save and update via `allowed_attributes