我收到此错误:渲染时捕获AttributeError:’dict’对象没有属性’friendship’.问题是当我尝试在自定义模板标记中获取friend.friend的值时.模块’friends_for_user’是对的.我有:
楷模
class FriendshipManager(models.Manager): def friends_for_user(self,user): friends = [] for friendship in self.filter(from_user=user).select_related(depth=1): friends.append({"friend": friendship.to_user,"friendship": friendship}) for friendship in self.filter(to_user=user).select_related(depth=1): friends.append({"friend": friendship.from_user,"friendship": friendship}) return friends
模板标签
def render(self,context): user = self.user.resolve(context) num = self.num.resolve(context) my_friends = Friendship.objects.friends_for_user(user) potential_friends = [] for friend in my_friends: potential_friends.append(Friendship.objects.friends_for_user(friend.friend)) //This line is the error. context[self.context_name] = potential_friends return ''
解决方法
看起来你正在使用字典而不是对象. 尝试 potential_friends.append(Friendship.objects.friends_for_user(朋友[ ‘朋友’]))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。