Ejemplo n.º 1
0
    def setUp(self):
        team = Team(name="Good Guys", sort_order=1, slug="goodguys")
        team.save()

        char = Character(name="Happy", sort_order=1, slug="happy", team=team)
        char.save()

        team = Team(name="Bad Guys", sort_order=2, slug="badguys")
        team.save()

        char = Character(name="Dot Dragon", sort_order=2, slug="dotdragon", team=team)
        char.save()
Ejemplo n.º 2
0
def character(request, character_id):
    follows = CharacterFollows.objects.filter(character=character_id,
                                              user_id=request.user).count()

    if Character.objects.filter(pk=character_id).count():
        return render(
            request, 'comics/character.html', {
                'character': Character.objects.get(pk=character_id),
                'follows': follows
            })
    else:
        headers = {'User-Agent': 'PintGrupo10'}
        field_list = 'id,name,real_name,aliases,publisher,gender,origin,deck,powers,image'

        response = requests.get(
            'https://comicvine.gamespot.com/api/character/4005-' +
            character_id,
            params={
                'format': 'json',
                'api_key': settings.COMICVINE_KEY,
                'field_list': field_list
            },
            headers=headers)
        if response.status_code == 200:
            son = json.loads(response.text)
            results = son['results']
            if results:
                character_id = results['id']
                super_name = results['name']
                if not super_name:
                    super_name = "Super name not available"
                real_name = results['real_name']
                if not real_name:
                    real_name = "Real name not available"
                aliases = results['aliases']
                if not aliases:
                    aliases = "Aliases not avaliable"
                publisher = results['publisher']['name']
                if not publisher:
                    publisher = "Publisher not avaliable"
                genderI = results['gender']
                genderS = ""
                if not genderI:
                    genderS = "None"
                else:
                    if genderI == 1:
                        genderS = 'Male'
                    elif genderI == 2:
                        genderS = 'Female'
                    else:
                        genderS = 'Other'
                character_type = results['origin']['name']
                if not character_type:
                    character_type = "Character type not available"
                powers = ""
                if results['powers']:
                    powers = results['powers'][0]['name']
                    if not powers:
                        powers = 'None'
                else:
                    powers = 'None'
                image = results['image']['small_url']
                origin = results['deck']
                if not origin:
                    origin = 'Origin not available'
                Character(character_id, super_name, real_name, aliases,
                          publisher, genderS, character_type, powers, image,
                          origin).save()
                return render(
                    request, 'comics/character.html', {
                        'character': Character.objects.get(pk=character_id),
                        'follows': follows
                    })

        return render(request, 'comics/404.html')

    if Character.objects.filter(pk=character_id).count():
        context = {'character': Character.objects.get(pk=character_id)}
        return render(request, 'comics/character.html', context)
    else:
        return render(request, 'comics/404.html')
Ejemplo n.º 3
0
    def setUp(self):
        team = Team(name="Test", sort_order=1, slug="goodguys")
        team.save()

        char = Character(name="Test", sort_order=1, slug="happy", team=team)
        char.save()