Explorar el Código

mysql에서도 쓸 수 있게

Surplus_Up (2DU) hace 6 años
padre
commit
f10d51f93c
Se han modificado 2 ficheros con 28 adiciones y 37 borrados
  1. 5 1
      route/func_title_random.py
  2. 23 36
      route/recent_changes.py

+ 5 - 1
route/func_title_random.py

@@ -3,7 +3,11 @@ from .tool.func import *
 def func_title_random_2(conn):
     curs = conn.cursor()
 
-    curs.execute("select title from data order by random() limit 1")
+    curs.execute("" + \
+        "select title from data " + \
+        "where title not like 'user:%' and title not like 'category:%' and title not like 'file:%'" + \
+        "order by random() limit 1" + \
+    "")
     data = curs.fetchall()
     if data:
         return redirect('/w/' + url_pas(data[0][0]))

+ 23 - 36
route/recent_changes.py

@@ -39,28 +39,20 @@ def recent_changes_2(conn, name, tool):
                 
                 # 기본적인 move만 구현
                 tool_select = flask.request.args.get('tool', None)
-                if tool_select:
-                    if tool_select == 'move':
-                        curs.execute('''
-                            select id, title, date, ip, send, leng from history
-                            where send like ? or send like ?
-                            order by id + 0 desc
-                            limit ?, '50'
-                        ''', ['%(<a>' + name +'</a>%', '%<a>' + name + '</a> move)', str(sql_num)])
-                    else:
-                        curs.execute('''
-                            select id, title, date, ip, send, leng from history
-                            where title = ?
-                            order by id + 0 desc
-                            limit ?, '50'
-                        ''', [name, str(sql_num)])
+                if tool_select and tool_select == 'move':
+                    curs.execute('' + \
+                        'select id, title, date, ip, send, leng from history ' + \
+                        'where send like ? or send like ? ' + \
+                        'order by id + 0 desc ' + \
+                        "limit ?, '50'" + \
+                    '', ['%(<a>' + name +'</a>%', '%<a>' + name + '</a> move)', str(sql_num)])
                 else:
-                    curs.execute('''
-                        select id, title, date, ip, send, leng from history
-                        where title = ?
-                        order by id + 0 desc
-                        limit ?, '50'
-                    ''', [name, str(sql_num)])
+                    curs.execute('' + \
+                        'select id, title, date, ip, send, leng from history ' + \
+                        'where title = ? ' + \
+                        'order by id + 0 desc ' + \
+                        "limit ?, '50'" + \
+                    '', [name, str(sql_num)])
             else:
                 div +=  '''
                         <td id="main_table_width">''' + load_lang('document_name') + '''</td>
@@ -85,22 +77,17 @@ def recent_changes_2(conn, name, tool):
                     <td id="main_table_width">''' + load_lang('time') + '''</td>
                 </tr>
             '''
-            if flask.request.args.get('set', 'normal') == 'user':
-                curs.execute('''
-                    select id, title, date, ip, send, leng from history 
-                    where title like 'user:%' 
-                    order by date desc 
-                    limit ?, 50
-                ''', [str(sql_num)])
-            else:
+
+            set_user = flask.request.args.get('set', 'normal')
+            if set_user == 'normal':
                 div = '<a href="?set=user">(' + load_lang('user_document') + ')</a>' + div
 
-                curs.execute('''
-                    select id, title, date, ip, send, leng from history 
-                    where not title like 'user:%' 
-                    order by date desc 
-                    limit ?, 50
-                ''', [str(sql_num)])
+            curs.execute('' + \
+                'select id, title, date, ip, send, leng from history ' + \
+                "where " + ('' if set_user == 'user' else 'not ') + "title like 'user:%' " + \
+                'order by date desc ' + \
+                'limit ?, 50' + \
+            '', [str(sql_num)])
 
         data_list = curs.fetchall()
         for data in data_list:    
@@ -215,7 +202,7 @@ def recent_changes_2(conn, name, tool):
                 
             div += next_fix('/recent_changes?num=', num, data_list)
 
-            if flask.request.args.get('set', 'normal') == 'user':
+            if set_user == 'user':
                 sub = ' (' + load_lang('user') + ')'
                 menu = [['recent_changes', load_lang('return')]]