Browse Source

fix board select within create time and sort form

honmaple 8 years ago
parent
commit
54ecb7235c
2 changed files with 12 additions and 11 deletions
  1. 6 6
      forums/api/forums/views.py
  2. 6 5
      forums/api/utils.py

+ 6 - 6
forums/api/forums/views.py

@@ -6,7 +6,7 @@
 # Author: jianglin
 # Email: xiyang0807@gmail.com
 # Created: 2016-12-17 20:45:08 (CST)
-# Last Update:星期五 2017-4-21 17:35:51 (CST)
+# Last Update:星期二 2017-5-2 11:52:28 (CST)
 #          By:
 # Description:
 # **************************************************************************
@@ -87,11 +87,11 @@ class BoardView(MethodView):
                     o.append(getattr(Topic, i.split('-')[1]).desc())
                 else:
                     o.append(getattr(Topic, i))
-            topics = Topic.query.outerjoin(Board).filter_by(**filter_dict).or_(
+            topics = Topic.query.filter_by(**filter_dict).outerjoin(Board).or_(
                 Board.parent_id == boardId,
                 Board.id == boardId).order_by(*o).paginate(page, number, True)
-        else:
-            filter_dict.update(board_id=boardId)
-            topics = Topic.query.filter_by(
-                **filter_dict).order_by(*order_by).paginate(page, number, True)
+            return topics
+        filter_dict.update(board_id=boardId)
+        topics = Topic.query.filter_by(
+            **filter_dict).order_by(*order_by).paginate(page, number, True)
         return topics

+ 6 - 5
forums/api/utils.py

@@ -6,7 +6,7 @@
 # Author: jianglin
 # Email: xiyang0807@gmail.com
 # Created: 2017-03-29 13:33:03 (CST)
-# Last Update:星期五 2017-4-21 17:25:11 (CST)
+# Last Update:星期二 2017-5-2 12:21:37 (CST)
 #          By:
 # Description:
 # **************************************************************************
@@ -43,14 +43,15 @@ def gen_topic_filter(query_dict=dict(), keys=[], equal_key=[], user=None):
 
 def gen_topic_orderby(query_dict=dict(), keys=[], date_key=True):
     keys.append('id')
-    # order_by = ['id']
-    order_by = ['-is_top', 'id']
+    order_by = ['-id']
+    # order_by = ['-is_top', '-id']
     orderby = query_dict.pop('orderby', None)
     desc = query_dict.pop('desc', None)
     if orderby == '0':
-        order_by = ['author_id']
-    elif orderby == '1':
         order_by = ['created_at']
+    elif orderby == '1':
+        order_by = ['author_id']
     if desc == '0':
         order_by = ['-%s' % i for i in order_by]
+    order_by = ['-is_top'] + order_by
     return tuple(order_by)