How to prevent a form from validating slots if already filled

Hi all!

I would like to prevent a form from validating slots that were filled before the form started. The reason is that some of our validation functions are actually doing more complicated things such as parsing the raw text of the message and querying a database to fill the slot.

In that case, I would like to prevent the validation functions to be called. It would be fine to prevent validation at the beginning of the form altogether as well.

Right now, I’m thinking of creating a decorator that I can add to any validate_xxx method to prevent the validation from being done. It would do so by looking at the requested_slot, if it is not set, it would simply return the current value without executing the rest of the validation.

Any suggestions?

Thanks, Nicolas

Another way would be to look into tracker.active_form, which is an empty dictionary on first run.