Ejemplo n.º 1
0
def vote_on_film(id, direction):

    title = request.json.get("title")
    year = request.json.get("year")
    if year != "None":
        length = len(str(year))
        year_only = str(year)[length - 4:]

    try:
        film = Film.query.filter_by(film_id=id).first()

        if film:
            film.updateVotes(direction)
        else:
            film = Film(film_id=id, title=title, year=year_only)
            film.updateVotes(direction)
            db.session.add(film)
        
        db.session.commit()

        data = {"likes": film.likes, "dislikes": film.dislikes}
        
        return (data, 201)

    except:
        return ({"error": ["An error occurred. Votes cannot be registered"]}, 500)
Ejemplo n.º 2
0
def init_data_of_tables():
    """
    从JSON文件初始化表数据
    :return: None
    """
    from utils import add_url_rows

    with open('films.json', encoding="utf-8") as f:
        film_list = json.load(f)

        for film_info in film_list:
            film = Film(id=film_info["id"],
                        title=film_info["title"],
                        description=film_info["description"],
                        director=film_info["director"],
                        producer=film_info["producer"],
                        release_date=film_info["release_date"],
                        rt_score=film_info["rt_score"],
                        url=film_info["url"])
            session.add(film)

            location_list = film_info["locations"]
            add_url_rows('Location', film.id, location_list)

            people_list = film_info["people"]
            add_url_rows('People', film.id, people_list)

            specie_list = film_info["species"]
            add_url_rows('Specie', film.id, specie_list)

            vehicle_list = film_info["vehicles"]
            add_url_rows('Vehicle', film.id, vehicle_list)

        session.commit()
Ejemplo n.º 3
0
def najboljsi_filmi():
    """
    Izpiše najboljših 10 filmov v letu, ki ga vnese uporabnik.
    """
    leto = input('Katero leto te zanima? ')
    filmi = Film.najboljsi_v_letu(leto)
    for mesto, film in enumerate(filmi, 1):
        print(f'{mesto}) {film.naslov} ({film.ocena}/10)')
Ejemplo n.º 4
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()
Ejemplo n.º 5
0
def dodajanje_filma():
    """
    Doda film s podatki, ki jih vnese uporabnik.
    """
    naslov = input("Napiši naslov filma: ")
    leto = None
    while leto is None:
        try:
            leto = int(input("Napiši leto: "))
        except ValueError:
            print("Leto mora biti celo število!")
    ocena = None
    while ocena is None:
        try:
            ocena = float(input("Napiši oceno: "))
        except ValueError:
            print("Ocena mora biti število!")
    reziserji = []
    while True:
        print("Ali želiš dodati režiserja?")
        dodaj = vnesi_izbiro(JaNe)
        if dodaj == JaNe.NE:
            break
        oseba = poisci_osebo()
        reziserji.append(oseba)
        print(f"Dodan režiser {oseba.ime}.")
    igralci = []
    while True:
        print("Ali želiš dodati igralca?")
        dodaj = vnesi_izbiro(JaNe)
        if dodaj == JaNe.NE:
            break
        oseba = poisci_osebo()
        igralci.append(oseba)
        print(f"Dodan igralec {oseba.ime}.")
    film = Film(naslov, leto, ocena)
    film.dodaj_v_bazo(reziserji, igralci)
    print(f'Film {naslov} ({leto}) dodan z ID-jem {film.id}.')
Ejemplo n.º 6
0
def load_films():
	"""Load films from seed data into database"""

	with open("seed_data/films.txt") as films: 
		for row in films: 
			film = row.rstrip().split("|")

			hidden = True if film[10] == "True" else False

			kwargs = dict(
			film_id = film[0],
			user_id = film[1],
			resume_order = film[2],
			review_order = film[3],
			title = film[4],
			specifier = film[5],
			character = film[6], 
			producer = film[7],
			director = film[8],
			link = film[9],
			hidden = hidden 
			)

			keys_to_remove = []

			for key in kwargs.keys(): 
				if kwargs[key] == "":
					keys_to_remove.append(key)

			for key in keys_to_remove:
				del kwargs[key]

			film = Film(**kwargs)

			db.session.add(film)

	db.session.commit()
Ejemplo n.º 7
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": "新增成功"}
Ejemplo n.º 8
0
def najboljsi_filmi(leto):
    return bottle.template('najboljsi_filmi.html',
                           leto=leto,
                           filmi=Film.najboljsi_v_letu(leto))