def follow(username): user = User.query.filter_by(username=username).first() if user is None: flash('Invalid user.') return redirect(url_for('.index')) if current_user.is_following(user): flash('You are already following this user.') return redirect(url_for('.user', username=username)) current_user.follow(user) flash('You are now following %s.' % username) return redirect(url_for('.user', username=username))
def follow(username): user = User.query.filter_by(username=username).first() if user is None: flash('User {} not found.'.format(username)) return redirect(url_for('main.index')) if user == current_user: flash('You cannot follow yourself!') return redirect(url_for('user', username=username)) current_user.follow(user) db.session.commit() flash('You are following {}!'.format(username)) return redirect(url_for('users.user', username=username))
def follow(): user_id_to_follow = request.form.get('username') if not user_id_to_follow or user_id_to_follow == current_user.username: return jsonify(message='bad parameter'), 400 user = User.query.filter_by(username=user_id_to_follow).first() if not user: return jsonify(message='User does not exist'), 404 else: try: current_user.follow(user) db.session.commit() return jsonify(username=user.username) except Exception as e: # todo -> add logging return jsonify(message='error while following'), 500