15
15
from readthedocs .search import tasks
16
16
from readthedocs .search .faceted_search import PageSearch
17
17
18
- from .serializers import PageSearchSerializer , VersionData
18
+ from .serializers import PageSearchSerializer , ProjectData , VersionData
19
19
20
20
log = logging .getLogger (__name__ )
21
21
@@ -183,15 +183,21 @@ def _get_all_projects_data(self):
183
183
.. code::
184
184
185
185
{
186
- "requests": VersionData(
187
- "latest",
188
- "sphinx",
189
- "https://requests.readthedocs.io/en/latest/",
186
+ "requests": ProjectData(
187
+ alias='alias',
188
+ version=VersionData(
189
+ "latest",
190
+ "sphinx",
191
+ "https://requests.readthedocs.io/en/latest/",
192
+ ),
190
193
),
191
- "requests-oauth": VersionData(
192
- "latest",
193
- "sphinx_htmldir",
194
- "https://requests-oauth.readthedocs.io/en/latest/",
194
+ "requests-oauth": ProjectData(
195
+ alias=None,
196
+ version=VersionData(
197
+ "latest",
198
+ "sphinx_htmldir",
199
+ "https://requests-oauth.readthedocs.io/en/latest/",
200
+ ),
195
201
),
196
202
}
197
203
@@ -203,11 +209,13 @@ def _get_all_projects_data(self):
203
209
main_project = self ._get_project ()
204
210
205
211
projects_data = {
206
- main_project .slug : VersionData (
207
- slug = main_version .slug ,
208
- doctype = main_version .documentation_type ,
209
- docs_url = main_project .get_docs_url (version_slug = main_version .slug ),
210
- project_alias = None ,
212
+ main_project .slug : ProjectData (
213
+ alias = None ,
214
+ version = VersionData (
215
+ slug = main_version .slug ,
216
+ doctype = main_version .documentation_type ,
217
+ docs_url = main_project .get_docs_url (version_slug = main_version .slug ),
218
+ ),
211
219
)
212
220
}
213
221
@@ -234,11 +242,14 @@ def _get_all_projects_data(self):
234
242
if version and self ._has_permission (self .request .user , version ):
235
243
url = subproject .get_docs_url (version_slug = version .slug )
236
244
project_alias = subproject .superprojects .values_list ('alias' , flat = True ).first ()
237
- projects_data [ subproject . slug ] = VersionData (
245
+ version_data = VersionData (
238
246
slug = version .slug ,
239
247
doctype = version .documentation_type ,
240
248
docs_url = url ,
241
- project_alias = project_alias ,
249
+ )
250
+ projects_data [subproject .slug ] = ProjectData (
251
+ alias = project_alias ,
252
+ version = version_data ,
242
253
)
243
254
244
255
return projects_data
0 commit comments