Kaynağa Gözat

Merge branch 'fix-docs' of https://github.com/bentiss/wekan into bentiss-fix-docs

Lauri Ojansivu 5 yıl önce
ebeveyn
işleme
ab6ec59bfb
1 değiştirilmiş dosya ile 10 ekleme ve 2 silme
  1. 10 2
      openapi/generate_openapi.py

+ 10 - 2
openapi/generate_openapi.py

@@ -814,13 +814,21 @@ def parse_schemas(schemas_dir):
                                                        for d in data]
                                 entry_points.extend(schema_entry_points)
 
+                                end_of_previous_operation = -1
+
                                 # try to match JSDoc to the operations
                                 for entry_point in schema_entry_points:
                                     operation = entry_point.method  # POST/GET/PUT/DELETE
+
+                                    # find all jsdocs that end before the current operation,
+                                    # the last item in the list is the one we need
                                     jsdoc = [j for j in jsdocs
-                                             if j.loc.end.line + 1 == operation.loc.start.line]
+                                             if j.loc.end.line + 1 <= operation.loc.start.line and
+                                                j.loc.start.line > end_of_previous_operation]
                                     if bool(jsdoc):
-                                        entry_point.doc = jsdoc[0]
+                                        entry_point.doc = jsdoc[-1]
+
+                                    end_of_previous_operation = operation.loc.end.line
             except TypeError:
                 logger.warning(context.txt_for(statement))
                 logger.error('{}:{}-{} can not parse {}'.format(path,