- 20
- 0
- 约3.73万字
- 约 24页
- 2017-02-08 发布于重庆
- 举报
《DjangoByExample》第四章中文翻译
《Django By Example》第四章 中文 翻译
原作者:Antonio Melé
第四章
创建一个社交网站
在上一章中,你学习了如何创建站点地图(sitemaps)和feeds,你还为你的blog应用创建了一个搜索引擎。在本章中,你将开发一个社交应用。你会为用户创建一些功能,例如:登录,登出,编辑,以及重置他们的密码。你会学习如何为你的用户创建一个定制的profile,你还会为你的站点添加社交认证。
本章将会覆盖一下几点:
? 使用认证(authentication)框架
? 创建用户注册视图(views)
? 通过一个定制的profile模型(model)扩展User模型(model)
? 使用python-social-auth添加社交认证
让我们开始创建我们的新项目吧。
创建一个社交网站项目
我们要创建一个社交应用允许用户分享他们在网上找到的图片。我们需要为这个项目构建以下元素:
? 一个用来给用户注册,登录,编辑他们的profile,以及改变或重置密码的认证(authentication)系统
? 一个允许用户用来关注其他人的关注系统(这里原文是follow,‘跟随’,感觉用‘关注’更加适合点)
? 为用户从其他任何网站分享过来的图片进行展示和打上书签
? 每个用户都有一个活动流允许用户看到他们关注的人上传的内容
本章主要讲述第一点。
开始你的社交网站项目
打开终端使用如下命令行为你的项目创建一个虚拟环境并且激活它:
mkdir evn
virtualenv evn/bookmarks
source env/bookmarks/bin/activate
shell提示将会展示你激活的虚拟环境,如下所示:
(bookmarks)laptop:~ zenx$
通过以下命令在你的虚拟环境中安装Django:
pip install Django==1.8.6
运行以下命令来创建一个新项目:
django-admin statproject bookmarks
在创建好一个初始的项目结构以后,使用以下命令进入你的项目目录并且创建一个新的应用命名为account:
cd bookmarks/
django-admin startapp account
请记住在你的项目中激活一个新应用需要在settings.py文件中的INSTALLED_APPS设置中添加它。将新应用的名字添加在INSTALLED_APPS列中的所有已安装应用的最前面,如下所示:
INSTALLED_APPS = (
account,
# ...
)
运行下一条命令为INSTALLED_APPS中默认包含的应用模型(models)同步到数据库中:
python manage.py migrate
我们将要使用认证(authentication)框架来构建一个认证系统到我们的项目中。
使用Django认证(authentication)框架
Django拥有一个内置的认证(authentication)框架用来操作用户认证(authentication),会话(sessions),权限(permissions)以及用户组。这个认证(authentication)系统包含了一些普通用户的操作视图(views),例如:登录,登出,修改密码以及重置密码。
这个认证(authentication)框架位于django.contrib.auth,被其他Django的contrib包调用。请记住你使用过这个认证(authentication)框架在第一章 创建一个Blog应用中用来为你的blog应用创建了一个超级用户来使用管理站点。
当你使用startproject命令创建一个新的Django项目,认证(authentication)框架已经在你的项目设置中默认包含。它是由django.contrib.auth应用和你的项目设置中的MIDDLEWARE_CLASSES中的两个中间件类组成,如下:
? AuthenticationMiddlwware:使用会话(sessions)将用户和请求(requests)进行关联
? SessionMiddleware:通过请求(requests)操作当前会话(sessions)
中间件就是一个在请求和响应阶段带有全局执行方法的类。你会在本书中的很多场景中使用到中间件。你将会学习如何创建一个定制的中间件在第十三章 Going Live(译者注:啥时候能翻译到啊)。
这个认证(authentication)系统还包含了以下模型(models):
? User:一个用户模型(model)包含基础字段;这个模型(model)的主要字段有:username,password,email,first_name,last
您可能关注的文档
- word常用操作.doc
- Windows_Movie_Maker教程.doc
- WS2812B规格书.doc
- WTO争端解决法律机制研究.doc
- VB选择题.doc
- WZHS03-10船舶和设备的维护程序.doc
- xp常用运行命令.doc
- XXX水库安全认定报告.doc
- XXX电厂汽机事故汇编.doc
- WS2813规格书.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 渣打银行(香港)有限公司.PDF VIP
- 2024年吉林高职高专院校单招统一考试《语文》试卷及参考答案.pdf VIP
- JSG202515机器人系统集成应用技术样题-学生组.docx VIP
- 棋盘博弈采购法战略体系.ppt VIP
- 节后复产复工安全知识考试试卷及答案.docx
原创力文档

文档评论(0)