【发布时间】:2015-02-05 10:58:49
【问题描述】:
我开始学习 django,所以我正在尝试做我的一个小项目,但是我无法突破这一步:
我正在尝试检查某个页面的浏览量。 这些是我的模型:
class Significado(models.Model):
nome = models.CharField(max_length=30)
significado = models.TextField()
pub_date = models.DateField(auto_now_add=True)
hits = models.IntegerField(default=0)
class Ip(models.Model):
name = models.CharField(max_length=30, default=None)
ip = models.CharField(max_length=15)
view_date = models.DateField(default=None)
def __str__(self):
return self.ip
我的看法是这样的:
def nomes(request, name):
#mostra o nome que esta no url /significado/<nome>
nameSearch = Significado.objects.get(nome__iexact = name)
sig = nameSearch.significado
todayDate = datetime.date.today()
ipUser = request.META.get('REMOTE_ADDR')
try:
ipSearch = Ip.objects.filter(name__iexact = name,
ip__iexact = ipUser, view_date=todayDate)
if ipSearch:
nameSearch.hits = nameSearch.hits + 1
except:
novoUser = Ip()
novoUser.name = name
novoUser.ip = ipUser
novoUser.view_date = todayDate
novoUser.save()
nameSearch.hits += 1
ipSearch = Ip.objects.filter(name__iexact = name,
ip__iexact = ipUser, view_date=todayDate)
return render(request, 'nome.html', {'nome':name,
'significado':sig,
#'data': ipSearch.view_date,
'ip':ipUser,
'lista':ipSearch,
'count':nameSearch.hits,
})
我想做的是:
- 如果有人查看某个页面,我会得到他的 ip;
-然后我检查它是否是我当天存储的ip;
- 如果是,请不要在 Significado 上增加一次“点击”;
- 如果该 ip 在当天没有查看该页面,则增加一个“点击”并将该 ip 与当前日期一起存储。
这是我在这里的第一个问题,所以我为任何错误道歉!
谢谢!
【问题讨论】:
-
你有什么问题?
标签: python django python-2.7 django-models django-views