Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Não consegui gerar a página dinâmica

Boa tarde, As lacunas do código utilizado no html, não aparecem na página quando carrego no navegador.

nome: {{perfil.nome}}, telefone: {{perfil.telefone}}, email: {{perfil.email}}, empresa: {{perfil.empresa}}.

E eu não consigo ver diferenças entre meu código e o da aula. Segue o código:

#perfil.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Perfil</title>
</head>
<body>
    <h1> Detalhe Perfil</h1>
    nome: {{perfil.nome}}, telefone: {{perfil.telefone}}, email: {{perfil.email}}, empresa: {{perfil.empresa}}
</body>
</html>
#models.py
from django.db import models


class Perfil(object):

    def __init__(self, nome='', telefone='', email='', nome_empresa=''):
        self.nome = nome
        self.telefone = telefone
        self.email = email
        self.nome_empresa = nome_empresa
#views.py
from django.shortcuts import render
from models import Perfil

def index(request):
    return render(request, 'index.html')

def exibir(request, perfil_id):
    perfil = Perfil()
    print(perfil_id)
    if perfil_id == 1:
        perfil = Perfil('Flavio Almeida', '777777', 'flavio@flavio.com', 'Caelum')
    if perfil_id == 2:
        perfil = Perfil(nome='Vitor Ribeiro', telefone='666999', email='tito@tito.com', nome_empresa='nintendo')

    return render(request, 'perfil.html', {'perfil': perfil})
#perfis/urls.py
from django.conf.urls import patterns, include, url

urlpatterns = patterns('',
    url(r'^$', 'perfis.views.index'),
    url(r'^perfil/(?P<perfil_id>\d+)$', 'perfis.views.exibir')
)
2 respostas

Algum erro aparece? Cole-o completo aqui.

solução!

Não apareceu nenhum erro professor. No entanto eu, revisando aqui descobri o bendito erro.

Em views.py, na condição if, eu coloquei 1 como inteiro ao invés de '1' (string). Eu capturava o perfil_id como string, e tava procurando o perfil_id como número inteiro. Apenas um errinho bobo meu.

Obrigado mesmo assim!