------template---------
{% extends 'base.html' %}
{% load staticfiles %}
{% block head_title %}
{% endblock %}
<head>
<title> Soni Compañia </title>
<style>
{% block style %}
h1 {
text-transform: uppercase;
}
hr {
background-color: black;
height: 5px;
}
body{
margin: 0;
padding: 0;
}
a{
text-decoration: none;
}
.container .dropdown {
margin: 0 20px;
vertical-align: top;
}
.dropdown {
display: inline-block;
position: relative;
overflow: hidden;
height: 28px;
width: 150px;
background: #f2f2f2;
border: 1px solid;
border-color: white #f7f7f7 whitesmoke;
border-radius: 3px;
}
.dropdown:before, .dropdown:after {
content: '';
position: absolute;
z-index: 2;
top: 9px;
right: 10px;
width: 0;
height: 0;
border: 4px dashed;
border-color: #888888 transparent;
pointer-events: none;
}
.dropdown:before {
border-bottom-style: solid;
border-top: none;
}
.dropdown:after {
margin-top: 7px;
border-top-style: solid;
border-bottom: none;
}
.dropdown-select {
position: relative;
width: 130%;
margin: 0;
padding: 6px 8px 6px 10px;
height: 28px;
line-height: 14px;
font-size: 12px;
color: #62717a;
text-shadow: 0 1px white;
border: 0;
border-radius: 0;
-webkit-appearance: none;
}
.dropdown-select:focus {
z-index: 3;
width: 100%;
color: #394349;
outline: 2px solid #49aff2;
outline: 2px solid -webkit-focus-ring-color;
outline-offset: -2px;
}
.dropdown-select > option {
margin: 3px;
padding: 6px 8px;
text-shadow: none;
background: #f2f2f2;
border-radius: 3px;
cursor: pointer;
}
{% endblock %}
</style>
{% block content %}
<!-- /Numero de Clientes depende del medio y filtro de busqueda\ -->
<div class='container'>
<div class=' col-sm-offset-1 '>
El numero de registros totales son: {{ clientes.count }} <br>
El numero de registros por el medio uno son : {{ clientes2.count }}<br>
El numero de registros por el medio dos son : {{ clientes3.count }}<br>
El numero de registros por el medio dos son : {{ clientes4.count }}<br>
Los medios son :{{medios}}
<p><label for="id_Medio">Medio:</label> <select id="id_medio" name="Medio">
<option value="" selected="selected">Selecciona una opcion </option>
{% for medio in medios %}
<option ><option> {{medio.nombre_medio}}</option></option>
{% endfor %}
</select></p>
<p><label for="id_Periodo">Periodo:</label> <select id="id_Periodo"
name="Periodo">
<option value="" selected="selected">Selecciona una opcion </option>
<option value="1">Periodo 1</option>
<option value="2">Periodo 2</option>
<option value="3">Periodo 3 </option>
</select></p>
<button class="btn btn-default" type="submit"><i class="fa
fa-search"></i>Filtrar</i></button>
</div>
</div>
<!-- / Filtro de Periodo -->
<!-- / Filtro de Clientes por Abecedario \ -->
<div class='container'>
<div class=' col-sm-offset-1 '>
{% for letra in objects %}
{% for key, clientes in letra.items %}
<h1 class = "text-transform: uppercase"> {{key}} </h2>
<hr>
{% for cliente in clientes %}
<p align="justify"><font size=3> Nombre del Cliente: {{
cliente.Nombre }} {{ cliente.Apellido}}</p></font>
<p align="justify"><font size=2> Medio por el cual llego: {{
cliente.medio}}<p></font>
<br>
{% endfor %}
<br>
{% endfor %}
{% endfor %}
</div>
<!-- / Finaliza Filtro Abecedario \ -->
{% endblock %}
-view--
from django.shortcuts import render, Http404
from .models import Coche, CocheImage, Clientes, Medio
from datetime import *
import string
def search(request):
try:
q = request.GET.get('q')
except:
q = None
if q:
coche = Coche.objects.filter(titulo__icontains=q)
context = {'query': q, 'coche': coche}
template = 'products/results.html'
else:
template = 'home.html'
context = {}
return render(request, template, context)
def home(request):
products = Coche.objects.all()
template = 'home.html'
return render(request, template, locals())
def all(request):
products = Coche.objects.all()
template = 'products/all.html'
return render(request, template, locals())
def usados(request):
products = Coche.objects.filter(tipo='1')
template = 'products/usados.html'
return render(request, template, locals())
def solicitados(request):
products = Coche.objects.filter(tipo='2')
template = 'products/solicitados.html'
return render(request, template, locals())
def asignados(request):
hoy = date.today()
mes = datetime.now().month
year = datetime.now().year
# products =Coche.objects.filter(fecha = hoy,
# tipo='3',fecha__month= 11)
products = Coche.objects.filter(tipo='3')
template = 'products/asignados.html'
return render(request, template, locals())
def proceso(request):
products = Coche.objects.filter(tipo='4')
template = 'products/proceso.html'
return render(request, template, locals())
def recientes(request):
products = Coche.objects.filter()
template = 'products/proceso.html'
return render(request, template, locals())
def single(request, slug):
try:
product = Coche.objects.get(slug=slug)
images = CocheImage.objects.filter(product=product)
template = 'products/single.html'
return render(request, template, locals())
except:
raise Http404
def single2(request, slug):
try:
product = Clientes.objects.get(slug=slug)
template = 'products/Single_clientes.html'
return render(request, template, locals())
except:
raise Http404
def clientes(request):
clientes = Clientes.objects.order_by('Nombre')
clientes2 = Clientes.objects.order_by('Nombre').filter(medio='1')
clientes3 = Clientes.objects.order_by('Nombre').filter(medio='2')
clientes4 = Clientes.objects.order_by('Nombre').filter(medio='3')
abecedario = string.ascii_letters[:26]
objects = []
order = 'Nombre'
for letra in abecedario:
filters = {'Nombre__startswith': letra}
objects.append({letra:
Clientes.objects.filter(**filters).order_by(order)})
template = 'products/Clientes.html'
return render(request, template, locals())
def medios(request):
medios = Medio.objects.filter()
template = 'products/Clientes.html'
context = {'medios': medios}
return render(request, template, context)
----models----
from django.core.urlresolvers import reverse
from django.db import models
CATEGORIA_CHOICEs = (
('1', 'Reciente'), ('2', 'Apartado'), ('3', 'Vendido'),
)
MEDIO_CHOICES = (('1', 'FACEBOOK'), ('2', 'TWITTER'), ('3', 'PAGINA WEB'))
TIPO_CHOICES = (('1', 'Usados'), ('2', 'Solicitados'), ('3', 'Asignados'),
('4', 'En Proceso'))
Periodo_CHOICES = (('1', 'Periodo1'), ('2', 'Periodo2'), ('3', 'Periodo3'))
class Coche(models.Model):
titulo = models.CharField(max_length=120)
marca = models.ForeignKey('Marca', null=True, blank=True,
verbose_name="Marca")
modelo= models.ForeignKey('Modelo', null=True, blank=True)
version = models.CharField(max_length=120)
tipo = models.CharField(max_length=12, choices=TIPO_CHOICES)
precio = models.DecimalField(decimal_places=2, max_digits=100)
slug = models.SlugField(unique=True)
timestamp = models.DateTimeField(auto_now_add=True, auto_now=False)
updated = models.DateTimeField(auto_now_add=False, auto_now=True)
active = models.BooleanField(default=True)
def __unicode__(self):
return self.titulo
class Meta:
unique_together = ('titulo', 'slug')
def get_absolute_url(self):
return reverse("single_product", kwargs={"slug": self.slug})
class CocheImage(models.Model):
product = models.ForeignKey(Coche)
image = models.ImageField(upload_to='products/images/')
featured = models.BooleanField(default=False)
thumbnail = models.BooleanField(default=True)
active = models.BooleanField(default=True)
updated = models.DateTimeField(auto_now_add=False,auto_now=True)
def __unicode__(self):
return self.product.titulo
class Clientes(models.Model):
Nombre = models.CharField(max_length=120)
Apellido = models.CharField(max_length=50)
Nombre_Asesor= models.CharField(max_length=50)
tel_casa = models.PositiveIntegerField(null=True, blank=True)
tel_oficina = models.PositiveIntegerField(null=True, blank=True)
celular = models.PositiveIntegerField(null=True, blank=True)
correo = models.EmailField()
medio = models.ForeignKey('Medio', null=True, blank=True)
periodo = models.CharField(max_length=12, choices=Periodo_CHOICES)
slug2 = models.SlugField(unique=True)
def __unicode__(self):
return self.Nombre
class Meta:
unique_together = ('correo', 'slug2')
def get_absolute_url2(self):
return reverse("Single_clientes", kwargs={"slug2": self.slug2})
class Marca (models.Model):
nombre_marca = models.CharField(max_length=50)
def __unicode__(self):
return self.nombre_marca
class Modelo (models.Model):
marca = models.ForeignKey('Marca', null=True, blank=True)
nombre_modelo = models.CharField(max_length=50)
def __unicode__(self):
return self.nombre_modelo
class Medio (models.Model):
nombre_medio = models.CharField(max_length=50)
def __unicode__(self):
return self.nombre_medio
El miércoles, 11 de noviembre de 2015, 12:19:05 (UTC-6), miguel angel lopez
mendo escribió:
>
> ----------------view------------
>
> def medios(request):
> medios = Medio.objects.filter()
> template = 'products/Clientes.html'
> print medios
> return render(request, template, locals())
>
>
> --------model-----------------
>
> class Medio (models.Model):
> nombre_medio = models.CharField(max_length=50)
>
> def __unicode__(self):
> return self.nombre_medio
>
>
> --------template--------------
> <option value="" selected="selected">Selecciona una opcion </option>
> {% for medio in medios %}
> <option >{{ medios.nombre_medio }}</option>
> {% endfor %}
>
> </select></p>
>
>
>
> No se cual es el error no me muestra los medios que tengo registrados
>
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/2e58c66d-1e34-4974-8bb5-436ab72d5402%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.