首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Plone 4.1中使匿名用户可以查看成员画像

在Plone 4.1中使匿名用户可以查看成员画像
EN

Stack Overflow用户
提问于 2011-10-19 16:33:03
回答 2查看 425关注 0票数 3

在Plone 4.1中,我想让匿名用户可以查看成员画像(在portal_memberdata/portrait中)。

即使我在公共视图中返回图像的正确url,该图像始终是受保护的,并且返回默认的url ('defaultUser.png')。

我如何才能做到这一点,并在我的viewlets中向匿名用户显示作者的肖像?

只是想澄清一下:

代码语言:javascript
运行
复制
author.getPersonalPortrait().absolute_url()

将返回图像的正确url。当访问视图时,当浏览器获取图像时,资源是受保护的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-19 18:51:12

在使用了pdb之后,我用这种方式解决了这个问题:

代码语言:javascript
运行
复制
def get_author_image(self, member_id):
    """
    Fetch the author portrait image url accoding to member_id
    """
    mtool = getToolByName(self.context, 'portal_membership')
    mtool.getPersonalPortrait(id=member.id)

秘诀是通过id kwarg。很奇怪,但很管用。

这不是权限问题,而是getPersonalPortrait返回图片的正确网址的方式问题。如果你不指定id,不知何故,它将无法计算出正确的成员id,因此退回到显示默认用户图像。

票数 3
EN

Stack Overflow用户

发布于 2011-10-19 17:34:44

代码语言:javascript
运行
复制
def __init__(self):
    BaseTool.__init__(self)
    self.portraits=BTreeFolder2(id='portraits')

您必须将查看权限添加到portal_memberdata.portraits文件夹。

您可以通过转到以下地址来实现:

http://mysite.xx/portal_memberdata/portraits/manage_main

和管理权限:)肖像是简单的图像

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7818558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档