From b30104eb46ca3193913e6c8d40fe5e1b8949f50c Mon Sep 17 00:00:00 2001 From: nberting Date: Sun, 3 Jun 2018 15:23:10 +0200 Subject: [PATCH] added search all functionality with flask-whooshalchemyplus --- app/__init__.py | 8 ++++ app/forms.py | 3 +- app/models.py | 3 ++ app/static/css/style.css | 16 +++---- app/static/js/app.js | 4 +- app/views.py | 62 ++++++++++---------------- rebuild.py | 57 +++++++++++++++++++++++ whoosh/Book/MAIN_WRITELOCK | 0 whoosh/Book/MAIN_p6r8oedtat7ay25v.seg | Bin 0 -> 195062 bytes whoosh/Book/_MAIN_1.toc | Bin 0 -> 1985 bytes 10 files changed, 104 insertions(+), 49 deletions(-) create mode 100644 rebuild.py create mode 100755 whoosh/Book/MAIN_WRITELOCK create mode 100644 whoosh/Book/MAIN_p6r8oedtat7ay25v.seg create mode 100644 whoosh/Book/_MAIN_1.toc diff --git a/app/__init__.py b/app/__init__.py index 24660c2..b2dc543 100755 --- a/app/__init__.py +++ b/app/__init__.py @@ -8,6 +8,8 @@ import os import click from werkzeug.utils import secure_filename from sqlalchemy.dialects import registry +import flask_whooshalchemyplus + registry.register("rqlite.pyrqlite", "sqlalchemy_rqlite.pyrqlite", "dialect") basedir = os.path.abspath(os.path.dirname(__file__)) @@ -25,6 +27,9 @@ app.config['SQLALCHEMY_DATABASE_URI'] = 'rqlite+pyrqlite://localhost:4001/' app.config['DEBUG'] = True app.config['PORT'] = 80 +# set the location for the whoosh index +app.config['WHOOSH_BASE'] = 'whoosh' + #app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(basedir, 'mydatabase.db') db = SQLAlchemy(app) @@ -33,3 +38,6 @@ socketio = SocketIO(app) app.config.from_object(__name__) from app import views + +flask_whooshalchemyplus.init_app(app) # initialize + diff --git a/app/forms.py b/app/forms.py index 47cd54d..e3b74cc 100755 --- a/app/forms.py +++ b/app/forms.py @@ -32,7 +32,8 @@ class ChatForm(FlaskForm): class SearchForm(FlaskForm): - choices = [('Title', 'Title'), + choices = [('All', 'All'), + ('Title', 'Title'), ('Category', 'Category')] select = SelectField('', choices=choices) search = StringField('', validators=[InputRequired()]) diff --git a/app/models.py b/app/models.py index 43e94d1..0b281fd 100755 --- a/app/models.py +++ b/app/models.py @@ -2,6 +2,8 @@ from app import db from marshmallow import Schema, fields, ValidationError, pre_load import datetime from sqlalchemy import Column, Integer, DateTime +import flask_whooshalchemyplus + authors = db.Table('books_authors', db.Column('book_id', db.Integer, db.ForeignKey('books.id'), primary_key=True), @@ -15,6 +17,7 @@ stacks = db.Table('books_stacks', class Book(db.Model): __tablename__ = 'books' + __searchable__ = ['title', 'category', 'fileformat'] # these fields will be indexed by whoosh id = db.Column(db.Integer, primary_key = True) title = db.Column(db.String(255)) diff --git a/app/static/css/style.css b/app/static/css/style.css index 83127e1..023daa4 100755 --- a/app/static/css/style.css +++ b/app/static/css/style.css @@ -16,7 +16,7 @@ font-family: "Archivo Narrow"; } p{ - font-size: 22px; + font-size: 18px; } @@ -36,7 +36,7 @@ float: left; color: black; text-align: center; padding: 14px 16px; - font-size: 22px; + font-size: 18px; text-decoration: none; } @@ -58,7 +58,7 @@ padding: 0px 8px; } .lead{ - font-size: 22px; + font-size: 18px; } .library_table{ @@ -70,7 +70,7 @@ border-spacing:0; /* Removes the cell spacing via CSS */ } .library_table th{ -font-size: 21px; +font-size: 20px; cursor: pointer; } @@ -87,7 +87,7 @@ background-color: #E8E8E8!important; .library_table .title_col{ - font-size: 21px; + font-size: 20px; padding-left: 10px; } @@ -106,7 +106,7 @@ background-color: #fafafa; } #title_xppl{ -font-size: 55px; +font-size: 46px; cursor: pointer; } @@ -159,7 +159,7 @@ color: #fafafa; font-family:'Courier New'; font-weight:100; font-size:12px; - margin-top: 100px; + margin-top: 200px; } .footer pre{ @@ -192,7 +192,7 @@ font-size: 12px; top:0; left:0; position: fixed; - font-size: 25px; + font-size: 20px; background-color: yellow; } diff --git a/app/static/js/app.js b/app/static/js/app.js index 653b5e6..5236b0f 100755 --- a/app/static/js/app.js +++ b/app/static/js/app.js @@ -134,8 +134,8 @@ $( document ).ready(function() { duplicated: true, pauseOnHover: true, duration: 7000, - speed: 8, - gap: 100, + speed: 30, + gap: 200, startVisible:true }); console.log(response) diff --git a/app/views.py b/app/views.py index 77d0cca..ba0c01c 100755 --- a/app/views.py +++ b/app/views.py @@ -72,18 +72,6 @@ def uploaded_file_cover(filename): return send_from_directory(app.config['UPLOAD_FOLDER_COVER'], filename) -@app.route('/books', methods= ['POST','GET']) -def show_books(): - books = db.session.query(Book).all() - search = SearchForm(request.form) - if request.method == 'POST': - if search.select.data == 'Title': - return redirect((url_for('search_results', query=search.search.data))) - if search.select.data == 'Category': - return redirect((url_for('search_cat', query=search.search.data))) - - return render_template('show_books.html', books=books, form=search) - @app.route('/updates', methods=['POST', 'GET']) def get_updates(): userin = UserIns.query.filter_by(title="lastViewed").first() @@ -283,45 +271,43 @@ def show_stack_by_id(id): ## search -@app.route('/search/titles//', methods=['POST', 'GET']) -def search_results(query): - search = SearchForm(request.form) - random_order=Book.query.order_by(func.random()).limit(10) - results=Book.query.filter(Book.title.contains(query)).all() - - if not results: - upload_form = UploadForm(title= query, author='') - return render_template('red_link.html', form=upload_form, title=query) +## search +@app.route('/books', methods= ['POST','GET']) +def show_books(): + books = db.session.query(Book).all() + search = SearchForm(request.form) if request.method == 'POST': - query = search.search.data - results = [] - if search.select.data == 'Title': - return redirect((url_for('search_results', query=search.search.data))) - if search.select.data == 'Category': - return redirect((url_for('search_cat', query=search.search.data))) + return redirect((url_for('search_results', searchtype=search.select.data, query=search.search.data))) - return render_template('results.html', form=search, books=results, books_all=random_order, query=query) + return render_template('show_books.html', books=books, form=search) -@app.route('/search/cat//', methods=['POST', 'GET']) -def search_cat(query): +@app.route('/search///', methods=['POST', 'GET']) +def search_results(searchtype, query): search = SearchForm(request.form) random_order=Book.query.order_by(func.random()).limit(10) - results=Book.query.filter(Book.category.contains(query)).all() + results=Book.query.filter(Book.title.contains(query)).all() + + if searchtype == 'Title': + results=Book.query.filter(Book.title.contains(query)).all() + + if searchtype == 'Category': + results=Book.query.filter(Book.category.contains(query)).all() + + if searchtype== 'All': + results=Book.query.whoosh_search(query).all() if not results: - upload_form = UploadForm(category=query) - return render_template('red_link.html', form=upload_form, category=query) + upload_form = UploadForm(title= query, author='') + return render_template('red_link.html', form=upload_form, title=query) if request.method == 'POST': query = search.search.data results = [] - if search.select.data == 'Title': - return redirect((url_for('search_results', query=search.search.data))) - if search.select.data == 'Category': - return redirect((url_for('search_cat', query=search.search.data))) + return redirect((url_for('search_results', searchtype=search.select.data, query=search.search.data))) + + return render_template('results.html', form=search, books=results, books_all=random_order, searchtype=search.select.data, query=query) - return render_template('results.html', form=search, books=results, books_all=random_order, query=query) ### # The API diff --git a/rebuild.py b/rebuild.py new file mode 100644 index 0000000..3726790 --- /dev/null +++ b/rebuild.py @@ -0,0 +1,57 @@ + +import datetime +from app import app, models +import whoosh +import flask_whooshalchemyplus + + +""" +Rebuild all Whoosh search indices +Useful after manually importing data (side-stepping the SQLAlchemy ORM +and automatic Whoosh index updates) +If this is intended as a full rebuild, you should consider deleting the +Whoosh search database (as specified in app.config["WHOOSH_BASE"]) +before running the rebuild. This will ensure that no old/stale +data is left in the search indices (this process doesn't delete removed +data, only recreated search entries for current data). +""" + + +program_start = datetime.datetime.utcnow() + +def log(message): + logtime = datetime.datetime.utcnow() + logdiff = logtime - program_start + print("{0} (+{1:.3f}): {2}".format(logtime.strftime("%Y-%m-%d %H:%M:%S"), + logdiff.total_seconds(), + message)) + +def rebuild_index(model): + """Rebuild search index of Flask-SQLAlchemy model""" + log("Rebuilding {0} index...".format(model.__name__)) + primary_field = model.pure_whoosh.primary_key_name + searchables = model.__searchable__ + index_writer = flask_whooshalchemyplus.whoosh_index(app, model) + + # Fetch all data + entries = model.query.all() + + entry_count = 0 + with index_writer.writer() as writer: + for entry in entries: + index_attrs = {} + for field in searchables: + index_attrs[field] = str(getattr(entry, field)) + + index_attrs[primary_field] = str(getattr(entry, primary_field)) + writer.update_document(**index_attrs) + entry_count += 1 + + log("Rebuilt {0} {1} search index entries.".format(str(entry_count), model.__name__)) + + +if __name__ == "__main__": + model_list = [models.Book] + + for model in model_list: + rebuild_index(model) \ No newline at end of file diff --git a/whoosh/Book/MAIN_WRITELOCK b/whoosh/Book/MAIN_WRITELOCK new file mode 100755 index 0000000..e69de29 diff --git a/whoosh/Book/MAIN_p6r8oedtat7ay25v.seg b/whoosh/Book/MAIN_p6r8oedtat7ay25v.seg new file mode 100644 index 0000000000000000000000000000000000000000..61055801c414c560d01e4cf5dd48cdbd87bc8ee6 GIT binary patch literal 195062 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 E0D^XetN;K2 literal 0 HcmV?d00001