DJANGO-ALLAUTH社交用户系统的安装配置


Posted in Python onNovember 18, 2014

DJANGO-ALLAUTH是github上面排名较高的django user系统.本来通过对比是想选用django-userea的,可是博主智商不够看懂它的安装配置文档.....搞乱了一个测试项目之后,只好作罢.好在allauth安装配置相对简单.但是它的文档写得更乱...很多关键信息居然是在常见问题里面找到...记录下来备忘.

1.安装:

pip install django-allauth

2.配置

settings.py

TEMPLATE_CONTEXT_PROCESSORS = (

"django.contrib.auth.context_processors.auth",

"django.core.context_processors.debug",

"django.core.context_processors.i18n",

"django.core.context_processors.media",

"django.core.context_processors.static",

"django.core.context_processors.tz",

#"django.contrib.messages.context_processors.messages"

# Required by allauth template tags

"django.core.context_processors.request",

# allauth specific context processors

"allauth.account.context_processors.account",

"allauth.socialaccount.context_processors.socialaccount",

)
AUTHENTICATION_BACKENDS = (

# Needed to login by username in Django admin, regardless of `allauth`

"django.contrib.auth.backends.ModelBackend",
# `allauth` specific authentication methods, such as login by e-mail

"allauth.account.auth_backends.AuthenticationBackend",

)
INSTALLED_APPS = (

...

# The Django sites framework is required

'django.contrib.sites',
'allauth',

'allauth.account',

'allauth.socialaccount',

# ... include the providers you want to enable:

'allauth.socialaccount.providers.amazon',

'allauth.socialaccount.providers.angellist',

'allauth.socialaccount.providers.bitbucket',

'allauth.socialaccount.providers.bitly',

'allauth.socialaccount.providers.coinbase',

'allauth.socialaccount.providers.dropbox',

'allauth.socialaccount.providers.facebook',

'allauth.socialaccount.providers.flickr',

'allauth.socialaccount.providers.feedly',

'allauth.socialaccount.providers.github',

'allauth.socialaccount.providers.google',

'allauth.socialaccount.providers.hubic',

'allauth.socialaccount.providers.instagram',

'allauth.socialaccount.providers.linkedin',

'allauth.socialaccount.providers.linkedin_oauth2',

'allauth.socialaccount.providers.openid',

'allauth.socialaccount.providers.persona',

'allauth.socialaccount.providers.soundcloud',

'allauth.socialaccount.providers.stackexchange',

'allauth.socialaccount.providers.tumblr',

'allauth.socialaccount.providers.twitch',

'allauth.socialaccount.providers.twitter',

'allauth.socialaccount.providers.vimeo',

'allauth.socialaccount.providers.vk',

'allauth.socialaccount.providers.weibo',

'allauth.socialaccount.providers.xing',

...

)

urls.py:

urlpatterns = patterns('',

...

(r'^accounts/', include('allauth.urls')),

...

)

到此配置好了settings和url,在terminal里面输入

python manage.py makemigrations

python manage.py migrate

3.初始化使用

启动本地服务器,后 登陆admin

将用户系统将要服务的网站id确定为当前设置里面设置的网站id
为每一个oauth登陆的接口设置一个socialaccount app
将site和接口提供商的信息填入

此时访问

http://127.0.0.1:8000/accounts/login/
如果之前登陆过 请先访问
http://127.0.0.1:8000/accounts/logout/
就可以看到没有css的默认登陆页面了.可以重写,代码在

PATH\TO\YOUR\VIRTUALENV\Lib\site-packages\allauth\templates
各个社交网站接口提供商设置在此
http://django-allauth.readthedocs.org/en/latest/providers.html
比较本地化的只有微博和live...github可以算么 O(∩_∩)O

以上就是个人对于Django-allauth的使用经验及配置,如有错误,还请指正

Python 相关文章推荐
Python实现句子翻译功能
Nov 14 Python
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
Dec 12 Python
python实现图像识别功能
Jan 29 Python
python3写的简单本地文件上传服务器实例
Jun 04 Python
Python爬虫之正则表达式的使用教程详解
Oct 25 Python
Python中一般处理中文的几种方法
Mar 06 Python
用python wxpy管理微信公众号并利用微信获取自己的开源数据
Jul 30 Python
Python爬取爱奇艺电影信息代码实例
Nov 26 Python
Python如何基于smtplib发不同格式的邮件
Dec 30 Python
tensorflow实现将ckpt转pb文件的方法
Apr 22 Python
Python 字符串池化的前提
Jul 03 Python
django template实现定义临时变量,自定义赋值、自增实例
Jul 12 Python
django 自定义用户user模型的三种方法
Nov 18 #Python
使用grappelli为django admin后台添加模板
Nov 18 #Python
django模型中的字段和model名显示为中文小技巧分享
Nov 18 #Python
如何解决django配置settings时遇到Could not import settings 'conf.local'
Nov 18 #Python
github配置使用指南
Nov 18 #Python
Django1.7+python 2.78+pycharm配置mysql数据库教程
Nov 18 #Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 #Python
You might like
开源SNS系统-ThinkSNS
2008/05/18 PHP
php函数serialize()与unserialize()用法实例
2014/11/06 PHP
PHP实现链式操作的核心思想
2015/06/23 PHP
四个PHP非常实用的功能
2015/09/29 PHP
PHP 返回13位时间戳的实现代码
2016/05/13 PHP
详解PHP中array_rand函数的使用方法
2016/09/11 PHP
老生常谈PHP中的数据结构:DS扩展
2017/07/17 PHP
javascript下过滤数组重复值的代码
2007/09/10 Javascript
jQuery 渐变下拉菜单
2009/12/15 Javascript
基于jQuery的输入框在光标位置插入内容, 并选中
2011/10/29 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
ExtJS实现文件下载的方法实例
2013/11/09 Javascript
导入extjs、jquery 文件时$使用冲突问题解决方法
2014/01/14 Javascript
基于jquery实现省市区三级联动效果
2015/12/25 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
JavaScript对象数组排序实例方法浅析
2016/06/15 Javascript
浅谈javascript中执行环境(作用域)与作用域链
2016/12/08 Javascript
微信小程序 PHP生成带参数二维码
2017/02/21 Javascript
jQuery UI Draggable + Sortable 结合使用(实例讲解)
2017/09/07 jQuery
js中this对象用法分析
2018/01/05 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
vue-cli3配置favicon.ico和title的流程
2020/10/27 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
[16:43]Heroes19_剃刀(完美)
2014/10/31 DOTA
Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法
2016/07/01 Python
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
Python字典深浅拷贝与循环方式方法详解
2020/02/09 Python
python 三种方法实现对Excel表格的读写
2020/11/19 Python
详解CSS3 弹性布局快速入门
2019/06/06 HTML / CSS
攀岩、滑雪、徒步旅行装备:Black Diamond Equipment
2019/08/16 全球购物
个人欠款协议书范本2014
2014/11/02 职场文书
严以用权学习心得体会
2016/01/12 职场文书
幼儿体育课教学反思
2016/02/16 职场文书
Matlab如何实现矩阵复制扩充
2021/06/02 Python
java中用float时,数字后面加f,这样是为什么你知道吗
2021/09/04 Java/Android