def newClub(): if 'username' not in login_session: return redirect('/login') if request.method == 'POST': newClub = Club(name=request.form['name'], user_id=login_session['user_id']) session.add(newClub) session.commit() flash("New Club Created!") return redirect(url_for('showClubs')) else: return render_template("newClub.html")
def get_club(): for page_id in range(1, 2): try: url = CK_API_URL_PAGE.format('clubs', page_id) response = get_request(url) for club_data in response: try: return DB.open().query(Club).filter(Club.api_url == club_data['api']).one() except: obj = get_request(club_data['api']) if 'id' in obj: club = Club() club.parse_json(obj) DB.save(club) if club: print('SAVED CLUB ID {}'.format(club.id)) print('+++++++++++++++++') except: pass
def api_clubs(): if request.method == "POST": name = request.json['name'] description = request.json['description'] tags = request.json['tags'] print(name, description, tags) club = Club(club_name=name, description=description) db_session.add(club) db_session.commit() for tag in tags: t_new = Tag(tag=tag, club_id=db_session.query(Club).filter_by( club_name=name).first().id) db_session.add(t_new) db_session.commit() flash("Added club " + name + " to the database.", "success") return jsonify(dict(redirect='/')) else: clubs = db_session.query(Club).all() club_list = [] for club in clubs: # print(club) d = collections.OrderedDict() d['id'] = club.id d['club_name'] = club.club_name tags = club.tags ts = [] for t in tags: tg = str(t.tag) ts.append(tg) d['tags'] = ts d['description'] = club.description # d['favorites'] = club[4] club_list.append(d) j = json.dumps(club_list) return j
def put_club(): name = request.args.get('name') club = Club(name=name) db.session.add(club) db.session.commit() return jsonify(club.json())
session.rollback() exisiting_user = session.query(User).filter_by(id=user['id']).first() exisiting_user.name = user['name'] exisiting_user.email = user['email'] exisiting_user.picture = user['picture'] session.add(exisiting_user) session.commit() print("All users updated!") teams = json.load(open('epldata_teams.json')) for team in teams: club_name = team['club'].replace("+", " ") try: club = Club(id=team['club_id'], name=club_name, is_big_club=bool(team['big_club']), user_id=team['user_id']) session.add(club) session.commit() except: # Club already present session.rollback() existing_club = session.query(Club).filter_by( id=team['club_id']).first() existing_club.name = club_name existing_club.is_big_club = bool(team['big_club']) existing_club.user_id = team['user_id'] session.add(existing_club) session.commit() print("All clubs updated!")
try: f = open('pennclubs.db') f.close() except FileNotFoundError: Base.metadata.create_all(engine) html = get_clubs_html() s = soupify(html) soups = get_clubs(s) for soup in soups: name = get_club_name(soup) desc = get_club_description(soup) tags = get_club_tags(soup) favorites = 0 t = [] club = Club(club_name=name, description=desc) db_session.add(club) db_session.commit() for tag in tags: t_new = Tag(tag=tag, club_id=db_session.query(Club).filter_by( club_name=name).first().id) db_session.add(t_new) db_session.commit() @app.route('/') def main(): is_loggedin = False username = None jen = db_session.query(User).filter_by(username="******").first()
from pprint import pprint from base import DbManager from models import Club DB = DbManager() API_URL = 'http://35.153.66.157/api/{}/{}' def get_reqest(url): response = requests.get(url) return json.loads(response.text) def get_reqests(obj, page): response = requests.get(API_URL.format(obj, page)) return json.loads(response.text) def fill_table(model_name, counter, new_model): for i in range(1, counter + 1): url = API_URL.format(model_name, i) model = new_model model.parse_json(get_reqest(url)) DB.save(model) print('{}. -----------------------'.format(i)) fill_table('club', 10, Club())
from flask import Flask from models import db, Footballer, Club from routes import api, index app = Flask(__name__) app.config['JSON_AS_ASCII'] = False app.register_blueprint(api) app.register_blueprint(index) db.init_app(app) with app.app_context(): db.create_all() barcelona = Club(name='Barcelona') juventus = Club(name='Juventus') db.session.add(barcelona) db.session.add(juventus) db.session.commit() db.session.add( Footballer(name='Lionel', surname='Messi', club_id=barcelona.id)) db.session.add( Footballer(name='Cristiano', surname='Ronaldo', club_id=juventus.id)) db.session.commit() if __name__ == '__main__': app.run()
def makeClubModel(self, slug=''): if (not slug): slug = self.request.get('slug', '') if (slug): return Club.getClub(slug) return Club()