首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django-facebook连接用户,但不使用任何数据填充管理表

django-facebook连接用户,但不使用任何数据填充管理表
EN

Stack Overflow用户
提问于 2013-10-09 13:47:24
回答 1查看 279关注 0票数 2

我正在成功地使用django-facebook登录facebook用户(例如,登录后,模板标记{{ user }}显示facebook用户名)。然而,它并没有进入管理界面,而且在facebook users下根本没有数据。

此外,SQL表django_facebook_facebookcustomuser正在显示用户数据。

我猜我需要在FacebookCustomUser上注册admin.py模型,所以我就这么做了-

代码语言:javascript
复制
class FacebookCustomUserAdmin(admin.ModelAdmin):
    pass

admin.site.register(models.FacebookCustomUser, FacebookCustomUserAdmin)

# and commented out the user admin inteface -
#admin.site.register(models.FacebookUser, FacebookUserAdmin)

它解决了问题,但以一种非常刻薄的方式.我现在有一个“用户”表,显示不同的用户,但是“开放图形共享”和“类似”部分仍然没有填充来自db的任何数据。

当我试图在CustomUser类中传递一些东西时,如原始代码中所示-

代码语言:javascript
复制
 class FacebookCustomUserAdmin(admin.ModelAdmin):
    list_display = ('user_id', 'name', 'facebook_id',)
    search_fields = ('name',)

我得到了以下http500错误-

代码语言:javascript
复制
FacebookCustomUserAdmin.list_display[0], 'user_id' is not a callable or an attribute of 'FacebookCustomUserAdmin' or found in the model 'FacebookCustomUser'.

有没有人知道我如何正确地注册facebook用户(以及其他django-facebook模型)到管理站点?

非常感谢!

EN

回答 1

Stack Overflow用户

发布于 2014-04-25 20:57:35

两个指标:

  1. 扩展UserAdmin而不是ModelAdmin
  2. 使用id而不是user_id

试试这个:

代码语言:javascript
复制
from django.contrib import admin
from django_facebook import models
from django.contrib.auth.admin import UserAdmin

class AccountAdmin(UserAdmin):
    list_display = ('id', 'username', 'email', 'facebook_id')

admin.site.register(models.FacebookCustomUser, AccountAdmin)

settings.py中,您需要添加以下选项以确保保存了喜欢和朋友:

代码语言:javascript
复制
FACEBOOK_STORE_LIKES = True
FACEBOOK_STORE_FRIENDS = True
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19273922

复制
相关文章

相似问题

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