def add_word(): """ add slang to database """ word = Word(g.user["_id"]) try: data = { 'language': request.form.get("language"), 'local': request.form.get("local"), 'phrase' : request.form.get("phrase"), 'definition' : request.form.get("definition"), 'example' : request.form.get("example"), 'tags' : [tag.strip() for tag in request.form.get("tags").split(",")], 'likes' : [], 'dislikes' : [], 'likes_count' : 0, 'dislikes_count' : 0, 'views' : [], 'views_count' : 0, 'date_added' : datetime.utcnow().isoformat(), 'status' : Word.STATUS["approved"], 'user_id' : g.user["_id"], 'user_nick' : "", 'random' : word.get_random_value(int, 5) } word_id = word.insert_word(data) if word_id is None: return render_template("add_word.html", error="Error(s) occured in validation", errors = word.errors) else: return redirect(url_for("bp_word.show_add_form", success="Word inserted successfully.")) except KeyError as keys: return render_template("add_word.html", error="Required form field missing: " + keys[0]) except Exception as errors: return render_template("add_word.html", error="Unknown error occured. Contact site admin to report this." + json.dumps(errors.args))
def random_words(): """ business logic for home page """ try: word = Word(g.user["_id"]) return render_template("home.html", words = word.find_random(10)) except TemplateNotFound: app.logger.error("template word/home.html not found") abort(404)
def alpha(alphabet): """ business logic for home page """ try: word = Word(g.user["_id"]) return render_template("home.html", words = word.find_startswith(alphabet.lower(),10)) except TemplateNotFound: app.logger.error("template word/home.html not found") abort(404)
def __init__(self, *args, **kwargs): self.model = Word(user_id="haisum") super(self.__class__, self).__init__(*args, **kwargs)