我有一个搜索导航栏,我想保存搜索查询,以便改进导航栏和自动完成api,但是我不确定如何做到。会话变量似乎仅在用户在线时才起作用,并且很难保存许多用户。我应该创建自己的用户模型,然后向其中写入数据。您能举一个简单的例子来说明这一点吗?
我尝试使用session.request保存变量,然后在会话结束后访问它们,但是无法访问。
答案 0 :(得分:0)
您的问题尚不清楚,但是如果您需要的话,为什么不为用户模型创建搜索词和外键表。例如:
class SearchTerm(models.Model):
keywords = models.TextField()
user = models.ForeignKey(User)
自然,这仅对登录用户有效,在这种情况下您可以在视图中执行以下操作:
def search(request):
keywords = request.get('keywords')
user = request.user
st, created = SearchTerm.objects.get_or_create(keywords=keywords, user=user)
看,这是一个非常简单的示例,用于说明我认为您想做的事情,但是我不确定我是否已完全理解您的问题。