Currently nested resources are defined as nested classes. This is kinda convenient because it means you only need to import the base resource, e.g. you can do from googleapiclient._apis.analytics.v3.resources import AnalyticsResource and then you can get the nested management resource as AnalyticsResource.ManagementResource. It also mirrors how you get that nested resource in your code, i.e. management_resource = analytics_resource.management(). The main issue with this is that it ends up polluting the autocomplete on the resources. For an example, notice how both management and ManagementResource show up here:
The question is if it could it be worth restructuring this in some way to avoid this issue
Currently nested resources are defined as nested classes. This is kinda convenient because it means you only need to import the base resource, e.g. you can do
from googleapiclient._apis.analytics.v3.resources import AnalyticsResource
and then you can get the nested management resource asAnalyticsResource.ManagementResource
. It also mirrors how you get that nested resource in your code, i.e.management_resource = analytics_resource.management()
. The main issue with this is that it ends up polluting the autocomplete on the resources. For an example, notice how bothmanagement
andManagementResource
show up here:The question is if it could it be worth restructuring this in some way to avoid this issue