pass models & enums as lists so custom templates can use them #1189
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #1188.
The change is simply to store a list, rather than a generator expression.
The new
models_init.py.jinja
template in the end-to-end tests shows that this now works. Without the fix inopenapi.py
, this template is rendered with nothing under theUsing "openapi.models"
andUsing "openapi.enums"
headings.This fix is somewhat important for our use case, because we need to put some code in
models/__init__.py
that is aware of what the model class names and modules are. Without the fix, the only way to get this would be to iterate overimports
, which gives you strings likefrom .module_name import ClassName
, and then parse those strings, which is workable but pretty clunky.