Como eu faço para anexar os arquivo do meu projeto para enviar para voces ??
Minha pagina não esta mostrando os convites recebidos, não consigo encontrar o erro
ConnectedIn Todos os Perfis Oswaldo Alterado / oswaldo@oswaldo.com.br / 1 Steve / steve@minecraft.com / 3 Flavio Almeida / flavio@flavio.com.br / 4 Romulo Henrique / romulo@romulo.com.br / 5 Nenhum convite recebifo :(
--atualização do convite recebido --C:\Caca\Alura\Python\Django\projetoDjango\connectedin>python manage.py shell Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. (InteractiveConsole)
from perfis.models import Convite, Perfil a_convidar = Perfil.objects.get(id=1) solicitante = Perfil.objects.get(id=3) solicitante.convidar(a_convidar)
solicitante.id 3 a_convidar.id 1
--
arquivo views.py
# -*- coding: UTF-8 -*-
from django.shortcuts import render
from django.shortcuts import redirect
from perfis.models import Perfil
#from django.http import HttpResponse
# Create your views here.
def index(request):
#return HttpResponse('Bem-vindo ao Connectedin')
return render(request, 'index.html', {'perfis' : Perfil.objects.all(), 'perfil_logado' : get_perfil_logado(request)})
def exibir(request, perfil_id):
print 'ID do perfil recebido: %s' % (perfil_id)
#perfil = Perfil()
#if perfil_id == '1':
# perfil = Perfil('Flavio Almeida', 'flavio@flavio.com.br', '3724777777', 'Caelum')
#if perfil_id == '2':
# perfil = Perfil('Romulo Henrique', 'romulo@romulo.com.br', '37248888888', 'Caelum')
# agora buscando dados no banco de dados
perfil = Perfil.objects.get(id=perfil_id)
return render(request, 'perfil.html', {"perfil" : perfil})
def convidar(request, perfil_id):
perfil_a_convidar = Perfil.objects.get(id=perfil_id)
perfil_logado = get_perfil_logado(request)
perfil_logado.convidar(perfil_a_convidar)
#este comando era necessario antes de importar o objeto "redirect"
#return render(request, 'index.html', {"perfis" : Perfil.objects.all()})
return redirect('index')
# esta função esta apenas simulando o perfil logado
# no futuro sera modificado para que o perfil log na pagina
def get_perfil_logado(request):
return Perfil.objects.get(id=1)
--
arquivo models.py
# -*- coding: UTF-8 -*-
from django.db import models
#class Perfil(object):
# def __init__(self, nome='', email='', telefone='', nome_empresa=''):
# self.nome = nome
# self.email = email
# self.telefone = telefone
# self.nome_empresa = nome_empresa
class Perfil(models.Model):
nome = models.CharField(max_length=255, null=False)
email = models.CharField(max_length=255, null=False)
telefone = models.CharField(max_length=15, null=False)
nome_empresa = models.CharField(max_length=255, null=False)
#não confunda este método com a view convidar
def convidar(self, perfil_convidado):
convite = Convite(solicitante=self, convidado=perfil_convidado).save()
class Convite(models.Model):
solicitante = models.ForeignKey(Perfil, related_name='convites_feitos')
convidado = models.ForeignKey(Perfil, related_name='convites_recebidos')
--
arquivo index.html
{% extends "base.html" %}
{% block body %}
<div class="col-lg-12">
<div class-"panel panel-defaul">
<div class=panel-heading!>
<strong>
Todos os Perfis
</strong>
</div>
<div>
{% if perfis %}
<ul>
{% for perfil in perfis %}
<li>
<a href="{% url 'exibir' perfil.id %}">
{{ perfil.nome }}
</a>
/ {{ perfil.email }}
/ {{ perfil.id}}
</li>
{% endfor %}
</ul>
{% else %}
<p>
Nenhum perfil encontrado
</p>
{% endif %}
</div>
</div>
<div class-"panel panel-defaul">
{% if perfis_logado.convites_recebidos.count %}
<div class="panel-heading">
<strong>
Convites aguardando aprovação
</strong>
</div>
<ul class="list-group">
{% for convite in perfis_logado.convites_recebidos.all %}
<li class="list-group-item">
{{ convite.solicitante.nome }}
<a href="#" class="pyll-right">
aceitar
</a>
</li>
{% endfor %}
</ul>
{% else %}
<div class=p"anel-body">
<p>
Nenhum convite recebifo :(
</p>
</div>
{% endif %}
</div>
</div>
{% endblock %}
--
arquivo base.html
{% load staticfiles %}
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-wifth">
<title>
ConnectedIn
</title>
<link rel="stylesheet" href="{% static "styles/bootstrap.css"%}">
<link rel="stylesheet" href="{% static "styles/main.css"%}">
</head>
<body>
<div class="container">
<div class="header">
<ul class="nav nav-pills pull-right">
<li>
<a href="{% url 'index' %}">
NOME
</a>
</li>
<li>
<a href="/logout/">
logout
</a>
</li>
</ul>
<h3 class="test-mutted">
ConnectedIn
</h3>
</div>
<div class="row content">
{% block body %}
{% endblock %}
</div>
</div>
</body>
</html>
--
arquivo perfil,html
{% extends "base.html" %}
{% block body %}
<div class="row">
<div class="col-lg-12">
<h2 style="margin-top: 0">
{{ perfil.nome }}
</h2>
<address>
<strong>
{{ perfil.nome_empresa }}
</strong>
<br>
<abbr title="Telefone">
{{ perfil.telefone }}
</abbr>
<br>
<a href="mailto:{{ perfil.email }}">
{{ perfil.email }}
</a>
</address>
<a href="{% url 'convidar' perfil.id %}">
convidar
</a>
</div>
</div>
{% endblock %}