示例#1
0
class TestParseActor(TestCase):
    id = "id"
    name = "name"
    url = "url"
    actor_details = {
        "id": id,
        "name": name,
        "url": url
    }
    expected = Actor(fid=id, name=name, url=url)

    def test_parses_successfully(self):
        self.assertEqual(self.expected, parse_actor(self.actor_details))
示例#2
0
def add_film():
    form = add_film_form.AddFilmForm()
    if form.validate_on_submit():
        session = db_session.create_session()
        movie = Movie(id=form.kp_id.data)
        if_exist = False
        try:
            movie.get_content('main_page')
        except Exception:
            if_exist = False
        else:
            if_exist = True

        if if_exist and len(session.query(Film.Film).filter(Film.Film.kp_id == form.kp_id.data).all()) == 0:
            film = Film.Film(movie.id, movie.title, movie.title_en, movie.plot, movie.year)
            session.add(film)
            session.commit()

            session = db_session.create_session()
            actors_list = movie.actors
            actors_to_add = actors_list.copy()
            actors_list = list(map(str, actors_list))
            for actor in session.query(Actor.Actor).filter(Actor.Actor.name.in_(actors_list)):
                actors_list.remove(str(actor.name))
                if actor.films != None:
                    actor.films = str(actor.films) + str(film.id) + '/'
                else:
                    actor.films = str(film.id) + '/'
            for i in actors_list:
                actor = Actor.Actor(str(i))
                actor.films = str(film.id) + '/'
                session.add(actor)
            session.commit()

            session = db_session.create_session()
            actors_str = ""
            for i in actors_to_add:
                actor_id = str(session.query(Actor.Actor).filter(Actor.Actor.name == str(i)).first().id)
                actors_str += "/" + actor_id

            film = session.query(Film.Film).filter(Film.Film.id == film.id).first()
            if not film.actors:
                film.actors = actors_str
            else:
                film.actors = str(film.actors) + actors_str
            session.commit()
            return redirect('/add_film')
    return render_template("add_film.html", form=form)
示例#3
0
文件: movies.py 项目: jaebradley/flix
def parse_actor(actor_details):
    return Actor(fid=actor_details["id"],
                 name=actor_details["name"],
                 url=actor_details["url"])