Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django活动流,我走错路了吗?_Python_Django - Fatal编程技术网

Python django活动流,我走错路了吗?

Python django活动流,我走错路了吗?,python,django,Python,Django,我正在使用django活动流跟踪/取消跟踪并显示跟踪/取消跟踪的内容。但作为一个悬而未决的问题,文件似乎含糊不清。如果有人能找出我做错了什么,我将不胜感激。这是文件 以下是我采取的步骤 pip install django-activity-stream 然后在我的设置/中添加actstream,并设置actstream的url。 对于我还包括的url url(r'^unfollow/(?P<category_name_url>\w+)/', 'main.views.unfollo

我正在使用django活动流跟踪/取消跟踪并显示跟踪/取消跟踪的内容。但作为一个悬而未决的问题,文件似乎含糊不清。如果有人能找出我做错了什么,我将不胜感激。这是文件

以下是我采取的步骤

pip install django-activity-stream
然后在我的设置/中添加actstream,并设置actstream的url。 对于我还包括的url

url(r'^unfollow/(?P<category_name_url>\w+)/', 'main.views.unfollow_user', name='unfollow'),
    url(r'^follow/(?P<category_name_url>\w+)/', 'main.views.follow_user', name='follow'),
我试图遵循类别模型,并显示类别中的内容

这是models.py

    from actstream import action
    class Category(models.Model): 
        name = models.CharField(max_length=128, unique=True)
        description = models.CharField(max_length=200, unique=True)
        image = models.FileField(upload_to='images',blank=True, null=True)
        author = models.ForeignKey(settings.AUTH_USER_MODEL)

        def __unicode__(self): 
            return self.name

    def new_category(sender, instance, created, **kwargs):
        action.send(instance.user, verb='posted', target=instance, mood='sleepy')

    post_save.connect(new_category, sender=Category)
然后在views.py中,这是我不确定的部分

def timeline(request):
    activities = user_stream(request.user)
    context = {
        'activities': activities,
    }
    return render(request, 'all_timeline.html', context)


def category_timeline(request, category_name):
    user = User.objects.select_related('profile').get(category_name=category_name)
    user_actions = []

    if is_following(request.user, user) or not user.profile.private:
        user_actions = actor_stream(user)

    context = {
        'user': user,
        'activities': user_actions,
    }
    return render(request, 'timeline.html', context)


def follow_user(request, category_name):
    follow(request.user, User.objects.get(category_name=category_name))
    return redirect('category_timeline', category_name)


def unfollow_user(request, category_name):
    unfollow(request.user, User.objects.get(category_name=category_name))
    return redirect('category_timeline', category_name)
在本教程中,他们使用的是用户名,但由于我在关注category,我想我必须将其更改为category\u name…这可能会把原来的actstream应用程序搞砸? \在这里,如果我只想显示以下类别的内容,那么我不需要时间轴功能,对吗

简而言之,当我进入follow/url时,我得到了一个意外的关键字参数“category\u name\u url”,它出现在get\u response第132行的env/local/lib/python2.7/site-packages/django/core/handlers/base.py中,所以我不知道发生了什么。也不知道我在做什么。。。 这是我的追踪

env/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)

Exception Type: TypeError at /follow/aa/
Exception Value: follow_user() got an unexpected keyword argument 'category_name_url'

变量名不匹配。视图需要
caregory\u name
,而url规则捕获
category\u name\u url
。换一个@美元。谢谢,但如果我将变量与category\u name\u url统一,我会在/follow/aa/处得到FieldError,无法将关键字“category\u name\u url”解析为字段。选择是:api_键,category,所以我把它们全部改为category。然后我得到了与我得到的相同的错误:follow_user()得到了一个意外的关键字参数“category_name_url”您是否也更改了正则表达式中捕获组的名称?感谢您的回复,目前我有url(r“^follow/(?P\w+)/”,“main.views.follow_user”,name='follow'),并将变量统一到category。但是,我担心的是我有url(r'^category/(?P\w+/$)、views.category、name='category'),这是用户可以遵循的。现在,我从follow(request.user,user.objects.get(category=category))中获得了以10为基数的int()的无效文本。代码中存在一些问题。尝试将查询参数更改为带有两个下划线的
category\uu name=
。如果没有帮助,请通过编辑问题更新代码和错误消息。
env/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)

Exception Type: TypeError at /follow/aa/
Exception Value: follow_user() got an unexpected keyword argument 'category_name_url'