[pyar] [django] Hit Counter

Ramiro Floydant ramirotrvnt18 en gmail.com
Mar Oct 8 14:09:44 ART 2013


Perfecto. Muchas gracias.

El problema sería entonces con las canciones más escuchadas, ya que al
hacer click se reproducen en el mismo lugar (hay una lista de 2 canciones
por artistas con un minireproductor) y no llevan a otra página...


2013/10/8 Pablo SEMINARIO <pabluk en gmail.com>

> Hola Ramiro,
>
> Como dice Julian, lo mas simple sería agregar en la vista donde generas la
> página de la noticia o de las canciones un contador.
> Para esto, en el modelo "Noticia" tendrias que tener un campo llamado por
> ejemplo "hits", algo asi:
>
>
> # models.py
> from django.db import models
>
> class Article(models.Model):
>     title = models.CharField(max_length=200)
>     hits = models.IntegerField(default=0)
>
>
> # views.py
> from django.shortcuts import render, get_object_or_404
> from news.models import Article
>
> def show(request, article_id):
>     article = get_object_or_404(Article, pk=article_id)
>     article.hits += 1
>     article.save()
>     context = {'article': article}
>     return render(request, 'news/article.html', context)
>
> def most_visited(request):
>     articles = Article.objects.order_by('-hits')[:10]
>     context = {'articles': articles}
>     return render(request, 'news/most_visited.html', context)
>
>
> Pero según la doc
> https://docs.djangoproject.com/en/1.5/ref/models/instances/#updating-attributes-based-on-existing-fieldsuna mejor forma de hacerlo es reemplazando
>
> article.hits += 1
>
> por
>
> article.hits = F('hits') + 1
>
> De todas formas tenes que tener un cuenta que ese contador de hits puede
> ser mas complicado de implementar si tenes muuuchas visitas por noticia,
> porque imaginate que vas a generar un update en la base de datos por cada
> visita, y ademas no podrías usar ningún sistema de cache de paginas, porque
> sino va a ignorar hits.
>  Todo depende del trafico esperado, sino algunos usan Javascript
> asincronico con Redis para cachear los hits y cada X segundos escribir en
> la DB.
>
>
>
> 2013/10/8 Ramiro Floydant <ramirotrvnt18 en gmail.com>
>
>> Podrías ser un poco más explícito por favor?
>>
>> Gracias por contestar.
>>
>>
>>
>> On Tue, Oct 8, 2013 at 8:46 AM, <juwaks en gmail.com> wrote:
>>
>>> Yo te recomendaria que en la vista que desarrollaste le sumes a un
>>> contador. Entonces a cada url le corresponde una vista y un contador.
>>> -----Original Message-----
>>> From: Ramiro Floydant <ramirotrvnt18 en gmail.com>
>>> Sender: "pyar" <pyar-bounces en python.org.ar>Date: Tue, 8 Oct 2013
>>> 08:06:24
>>> To: Python Argentina<pyar en python.org.ar>
>>> Reply-To: Python Argentina <pyar en python.org.ar>
>>> Subject: [pyar] [django] Hit Counter
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20131008/b727f442/attachment.html>


More information about the pyar mailing list