def index(): phrase = Phrase.get_last() phrases = Phrase.get_all() my_phrases = None return render_template( "phrase-list.html", title="Search Phrases", phrases=phrases, my_phrases=my_phrases, phrase=phrase, )
def matching_track(phrase): # phrase may not be in the db at all, or it may be a Track-less Phrase p = Phrase.query.filter_by(name=phrase).first() if not p: p = Phrase(name=phrase) db.session.add(p) db.session.commit() form_str = "\'" + phrase + "\'" chunk_max = 10 for chunk in range(chunk_max): results = sp.search(q=form_str, type='track', limit=50, offset=chunk * 50) results = results['tracks']['items'] for track in results: if phrase == track['name'].lower(): t = Track(name=track['name'], artists=track['artists'][0]['name'], album=track['album']['name'], spot_id=track['id'], image_url=track['album']['images'][0]['url'], phrase=p) db.session.add(t) db.session.commit() return t
def phrase_view(phrase_slug): phrase = Phrase.get_phrase(phrase_slug) return render_template("phrase.html", title="phrase.phrase_text", phrase=phrase)
def phrase_latest(): phrases = Phrase.get_all() return render_template("phrase-latest.html", title="Latest Phrases", phrases=phrases)
def add_document(title, body, user=None): regex = r"[^a-zA-Z\s\.-]" title = re.sub(regex, "", title.strip()) slug = str(uuid.uuid4())[:8] document = Document(title=title, body=body, slug=slug, user=user) db.session.add(document) phrase_texts = TextBlob(body).noun_phrases app.logger.info(phrase_texts) Phrase.add_multiple(phrase_texts, user, document) db.session.commit() return document
def add_cluster(title, body, user=None): regex = r"[^a-zA-Z\s\.-]" title = re.sub(regex, "", title.strip()) slug = str(uuid.uuid4())[:8] cluster = Cluster(title=title, body=body, slug=slug) db.session.add(cluster) phrase_texts = TextBlob(body).noun_phrases app.logger.info(phrase_texts) Phrase.add_multiple(phrase_texts, user, cluster) db.session.commit() return cluster
def phrase_list_api(): start = time.time() phrases = Phrase.get_featured() result = {} result["phrases"] = Phrase.get_serialized(phrases) result["phraseCount"] = phrases.count() diff = time.time() - start result["executionTime"] = "{:.2f} s".format(diff) response = jsonify(result) diff = time.time() - start app.logger.info("API Execution time: %s", "{:.2f} s".format(diff)) return response
def phrase_list(): term = request.args.get("term", "") regex = r"[^\w\.\s\-\,]" term = re.sub(regex, "", term.lower().strip()) phrase = Phrase.get_last() if term and "," in term: if current_user.is_authenticated: Comparison.add_comparison(term=term, user=current_user) else: Comparison.add_comparison(term=term) elif term: if current_user.is_anonymous: phrase = Phrase.lookup(term) else: phrase = Phrase.lookup(term, user=current_user) if phrase == None: flash("Something went wrong") # elif phrase.search_count == 1: # flash('New search phrase! ') # else: # flash('Searched ' + str(phrase.search_count) + ' times!') phrases = Phrase.get_all(limit=500) if current_user.is_anonymous: my_phrases = None else: my_phrases = User.get_by_email(current_user.email).phrases return render_template( "phrase-list.html", title="Search Phrases", phrases=phrases, my_phrases=my_phrases, phrase=phrase, )
File "<pyshell#28>", line 1, in <module> for post in Phrase.query.all(): NameError: name 'Phrase' is not defined >>> for post in models_test.Phrase.query.all(): db.session.delete(post) >>> db.session.commit() >>> from app.models import Phrase Traceback (most recent call last): File "<pyshell#33>", line 1, in <module> from app.models import Phrase ImportError: No module named 'app.models' >>> from app.models_test import Phrase >>> from app import db >>> p = Phrase(phrase='хоть отбавляй', definition='N-GEN. ХОТЬ_ОТБАВЛЯЙ', examples='У нас тут этого добра - хоть отбавляй!') >>> db.session.add(p) >>> db.session.commit() >>> p = Phrase(phrase='пруд пруди', definition='N-GEN. ПРУД_ПРУДИ', examples='Медом и маслом хоть пруд пруди… ветер взвивает муку вместо пыли') >>> db.session.add(p) >>> db.session.commit() >>> Phrase.query.whoosh_search('пруд').all() Traceback (most recent call last): File "<pyshell#42>", line 1, in <module> Phrase.query.whoosh_search('пруд').all() AttributeError: 'BaseQuery' object has no attribute 'whoosh_search' >>> Phrase.query.whoosh_search('пруд').all() Traceback (most recent call last): File "<pyshell#43>", line 1, in <module> Phrase.query.whoosh_search('пруд').all() AttributeError: 'BaseQuery' object has no attribute 'whoosh_search'