예제 #1
0
def createUser(login_session):
    ''' register the user and return the user id'''
    newUser = User(name=login_session['username'], email=login_session[
                   'email'])
    session.add(newUser)
    session.commit()
    user = session.query(User).filter_by(email=login_session['email']).one()
    return user.id
예제 #2
0
def delete_film():
    _id = request.form.get('id')

    if _id:
        film = session.query(Film).filter(Film.id == _id).delete()
        session.commit()
        return {"status": "0", "message": "电影 " + _id + " 删除成功"}

    return {"status": "1", "message": "电影编号无效"}
예제 #3
0
def get_film_info():
    film_id = request.args.get('id')

    if film_id:
        films = session.query(Film).filter(Film.id == film_id).all()

        if films:
            return films[0]

    return Film()
예제 #4
0
def test_query_album():
    print('\n[  TEST  ] Query Album')
    # Get a user
    me = UserAccount.query.first()
    print('[USER]', me.uri)

    # search all albums of a user
    query = session.query(SpotifyAlbum.name).filter(
        UserResource.owner_uri == me.uri, UserResource.type == 'album',
        Reference.real_uri == UserResource.real_uri,
        SpotifyAlbum.uri == Reference.uri)
    print('\t[SQL]', query)
    results = query.all()
    print('[RESULTS]', len(results))
    for name in results:
        print('[NAME]', name)
예제 #5
0
def test_query_track():
    print('\n[  TEST  ] Query Track')
    # print( SpotifyTrack.query.all() )

    # Get a user
    me = UserAccount.query.first()
    print('[USER]', me.uri)

    # Search all tracks of a user
    query = session.query(SpotifyTrack.name).filter(
        UserResource.owner_uri == me.uri, UserResource.type == 'track',
        UserResource.real_uri == Reference.real_uri,
        Reference.uri == SpotifyTrack.uri)
    print('\t[SQL]', query)
    results = query.all()
    print('[RESULTS]', len(results))
    for name in results:
        print('[NAME]', name)
예제 #6
0
def get_film_list():
    """
    获取电影信息
    :return:
    """

    from utils import get_urls

    func_name = inspect.stack()[0][3]
    hlog.enter_func(func_name)

    film_list = list()
    film_objs = session.query(Film).all()

    for obj in film_objs:
        film_id = obj.id
        hlog.var('film_id', film_id)

        location_list = get_urls('Location', film_id)
        people_list = get_urls('People', film_id)
        specie_list = get_urls('Specie', film_id)
        vehicle_list = get_urls('Vehicle', film_id)

        film = {
            "id": obj.id,
            "title": obj.title,
            "description": obj.description,
            "director": obj.director,
            "producer": obj.producer,
            "release_date": obj.release_date,
            "rt_score": obj.rt_score,
            "url": obj.url,
            "people": people_list,
            "species": specie_list,
            "locations": location_list,
            "vehicles": vehicle_list
        }

        film_list.append(film)

    hlog.info("读取电影信息成功。")
    hlog.exit_func(func_name)

    return film_list
예제 #7
0
def editOption(category_name, option_id):
    log = str(login_session.has_key('username'))
    user_id = login_session['user_id']
    category = get_cat_by_name(category_name)
    option = get_option_by_id(option_id)
    links = get_links_by_opId(option_id)
    # check if obj in db
    if category and option:
        if request.method == 'POST':
            f = request.form
            if f['name'] == '' or f['description'] == '':
                warning = "You need both Research Option' and 'Description'"
                return render_template('edit-option.html',
                                       log=log,
                                       meta_title=meta_title,
                                       meta_desc=meta_desc,
                                       categories=get_cats(),
                                       category=category,
                                       option=option,
                                       links=links,
                                       warning=warning)
            else:
                update_option(option, f)
                category = session.query(Category).filter_by(
                    id=option.cat_id).one()
                flash(option.name + ' has updated')
                return redirect(
                    url_for('option',
                            category_name=category.name,
                            option_id=option.id))
        # show option page
        else:
            return render_template('edit-option.html',
                                   meta_title=meta_title,
                                   meta_desc=meta_desc,
                                   log=log,
                                   categories=get_cats(),
                                   category=category,
                                   option=option,
                                   links=links)
예제 #8
0
def add_film():
    _id = request.form.get('id')
    _title = request.form.get('title')
    _description = request.form.get('description')
    _director = request.form.get('director')
    _producer = request.form.get('producer')
    _release_date = request.form.get('release_date')
    _rt_score = request.form.get('rt_score')
    _url = request.form.get('url')

    hlog.var('_id', _id)
    hlog.var('_title', _title)
    hlog.var('_description', _description)
    hlog.var('_director', _director)
    hlog.var('_producer', _producer)
    hlog.var('_release_date', _release_date)
    hlog.var('_rt_score', _rt_score)
    hlog.var('_url', _url)

    old_film = session.query(Film).filter(Film.id == _id).all()

    if old_film:
        return {"status": "1", "message": "电影编号已经存在"}

    film = Film(id=_id,
                title=_title,
                description=_description,
                director=_director,
                producer=_producer,
                release_date=_release_date,
                rt_score=_rt_score,
                url=_url)
    session.add(film)
    session.commit()

    return {"status": "0", "message": "新增成功"}
예제 #9
0
def getUserID(email):
    try:
        user = session.query(User).filter_by(email=email).one()
        return user.id
    except:
        return None
예제 #10
0
def getUserInfo(user_id):
    user = session.query(User).filter_by(id=user_id).one()
    return user