如果使用ArchiveIndexView,如何从example.com/username/gallery获取用户名部分?

泰坦战机

当前,我可以通过以下任何网址获取当前登录用户的画廊

example.com/user/gallery
example.com/user123/gallery
example.com/312any-thing/gallery

这不是我想要的。我想要的是先检查是否存在用户,然后通过来提供所需的库ArchiveIndexView

我如何类中获得usernameexample.com/ username/ gallery一部分ArchiveIndexView以实现

user = get_object_or_404(UserProfile, slug=username)

# project urls
urlpatterns = [
    url(r'^(?P<slug>[\w.-]+)/', include('profiles.urls', namespace='profiles_user')),
]

# app.urls
urlpatterns = [
    url(r'^$', views.ProfileDetailView.as_view(), name='profiles_home'),
    url(r'^gallery/$', views.ProfileGalleryArchiveIndexView.as_view(), name='profiles_gallery'),
]

# app.views
class ProfileGalleryDateView(object):
    date_field = 'date_added'
    allow_empty = True

class ProfileGalleryArchiveIndexView(ProfileGalleryDateView, ArchiveIndexView):

    def get_queryset(self):
        user = self.request.user  # here I want to get username from url
        user = get_object_or_404(UserProfile, slug=username)
        return Gallery.objects.filter(galleryextended__user=user).is_public()

我尝试username使用以下方法从url获取

def get_context_data(self, **kwargs):
    context = super(ProfileDetailView, self).get_context_data(**kwargs)
    user = get_object_or_404(UserProfile, pk=kwargs['object'].pk)

get_queryset比早执行get_context_data

丹尼尔·罗斯曼

您的URLslug会将用户名捕获为,因此您可以从获取用户名self.kwargs['slug']

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从uid获取用户名

来自分类Dev

如果禁用了宏,如何获取用户名?

来自分类Dev

Aurelia:如何获取用户窗口的用户名

来自分类Dev

如何从Discord用户名获取用户ID?

来自分类Dev

如何从Facebook中的用户名获取用户ID

来自分类Dev

Aurelia:如何获取用户窗口的用户名

来自分类Dev

用户注册后如何获取用户名

来自分类Dev

如何使用 Javascript 获取用户名

来自分类Dev

如何从Facebook ID获取用户名

来自分类Dev

如何从博客Laravel 5.2获取用户名

来自分类Dev

如何从Facebook ID获取用户名

来自分类Dev

如何从Facebook Unity SDK获取用户名

来自分类Dev

tweepy如何从ID获取用户名

来自分类Dev

如何在Django中获取用户名

来自分类Dev

如何从博客文章中获取用户名?

来自分类Dev

如何通过Laravel中的ID获取用户名?

来自分类Dev

如何通过Laravel中的关系获取用户名

来自分类Dev

如何从表中获取用户名

来自分类Dev

如何从PHP登录项目中获取用户名

来自分类Dev

如何从Google Analytics(分析)API获取用户名?

来自分类Dev

使用Youtube Data API 3.0获取用户名

来自分类Dev

使用FOSUserBundle通过queryBuilder join获取用户名

来自分类Dev

使用Youtube Data API 3.0获取用户名

来自分类Dev

无法从表单获取用户名(使用“ post”)

来自分类Dev

使用 customUserNamePasswordValidatorType 时获取用户名

来自分类Dev

如何使用Cognito身份ID获取用户属性(用户名,电子邮件等)

来自分类Dev

如何使用Firebase身份验证获取用户名以外的用户信息

来自分类Dev

如何在松弛机器人中获取用户名/用户ID

来自分类Dev

Discord.js如何仅从用户名获取用户ID

Related 相关文章

热门标签

归档