扉页
-------
#章节预览 第二版
************
## 1. Getting Started with Django 1.8
- Introduction
- Working with a virtual environment
- Getting ready
- How to do it…
- How it works…
- See also
- Creating a project file structure
- Getting ready
- How to do it…
- How it works…
- See also
- Handling project dependencies with pip
- Getting ready
- How to do it…
- How it works…
- There's more…
- See also
- Making your code compatible with both Python 2.7 and Python 3
- Getting ready
- How to do it…
- How it works…
- Including external dependencies in your project
- Getting ready
- How to do it…
- How it works…
- See also
- Configuring settings for development, testing, staging, and production environments
- Getting ready
- How to do it…
- How it works…
- See also
- Defining relative paths in the settings
- Getting ready
- How to do it…
- How it works…
- See also
- Creating and including local settings
- Getting ready
-How to do it…
-How it works…
- See also
- Setting up STATIC_URL dynamically for Subversion users
-Getting ready
- How to do it…
- How it works…
- See also
- Setting up STATIC_URL dynamically for Git users
-Getting ready
- How to do it…
- How it works…
- See also
- Setting UTF-8 as the default encoding for MySQL configuration
- Getting ready
-How to do it…
-How it works…
- Setting the Subversion ignore property
- Getting ready
- How to do it…
- How it works…
- See also
- Creating the Git ignore file
- Getting ready
- How to do it…
- How it works…
- See also
- Deleting Python-compiled files
- Getting ready
- How to do it…
- How it works…
- See also
- Respecting the import order in Python files
- Getting ready
- How to do it…
- How it works…
- There's more…
- See also
- Creating app configuration
- Getting ready
- How to do it…
- How it works…
- There is more…
- See also
- Defining overwritable app settings
- Getting ready
- How to do it…
- How it works…
#2. Database Structure
Introduction
Using model mixins
Getting ready
How to do it…
How it works…
There's more…
See also
Creating a model mixin with URL-related methods
Getting ready
How to do it…
How it works…
See also
Creating a model mixin to handle creation and modification dates
Getting ready
How to do it…
How it works…
See also
Creating a model mixin to take care of meta tags
Getting ready
How to do it…
How it works…
See also
Creating a model mixin to handle generic relations
Getting ready
How to do it…
How it works…
See also
Handling multilingual fields
Getting ready
How to do it…
How it works…
Using migrations
Getting ready
How to do it…
How it works…
See also
Switching from South migrations to Django migrations
Getting ready
How to do it…
How it works…
See also
Changing a foreign key to the many-to-many field
Getting ready
How to do it…
How it works…
See also
3. Forms and Views
Introduction
Passing HttpRequest to the form
Getting ready
How to do it…
How it works…
See also
Utilizing the save method of the form
Getting ready
How to do it…
How it works…
See also
Uploading images
Getting ready
How to do it…
How it works…
There's more
See also
Creating a form layout with django-crispy-forms
Getting ready
How to do it…
How it works…
There's more…
See also
Downloading authorized files
Getting ready
How to do it…
How it works…
See also
Filtering object lists
Getting ready
How to do it…
How it works…
See also
Managing paginated lists
Getting ready
How to do it…
How it works…
See also
Composing class-based views
Getting ready
How to do it…
How it works…
There's more…
See also
Generating PDF documents
Getting ready
How to do it…
How it works…
See also
Implementing a multilingual search with Haystack
Getting ready
How to do it…
How it works…
See also
4. Templates and JavaScript
Introduction
Arranging the base.html template
Getting ready
How to do it…
How it works…
See also
Including JavaScript settings
Getting ready
How to do it…
How it works…
See also
Using HTML5 data attributes
Getting ready
How to do it…
How it works…
See also
Opening object details in a modal dialog
Getting ready
How to do it…
How it works…
See also
Implementing a continuous scroll
Getting ready
How to do it…
How it works…
See also
Implementing the Like widget
Getting ready
How to do it…
How it works…
See also
Uploading images by Ajax
Getting ready
How to do it…
How it works…
See also
5. Custom Template Filters and Tags
Introduction
Following conventions for your own template filters and tags
How to do it...
Creating a template filter to show how many days have passed since a post was published
Getting ready
How to do it...
How it works...
There's more...
See also
Creating a template filter to extract the first media object
Getting ready
How to do it...
How it works...
There's more...
See also
Creating a template filter to humanize URLs
Getting ready
How to do it...
How it works...
See also
Creating a template tag to include a template if it exists
Getting ready
How to do it...
How it works...
There's more...
See also
Creating a template tag to load a QuerySet in a template
Getting ready
How to do it...
How it works...
See also
Creating a template tag to parse content as a template
Getting ready
How to do it...
How it works...
See also
Creating a template tag to modify request query parameters
Getting ready
How to do it...
How it works...
See also
6. Model Administration
Introduction
Customizing columns on the change list page
Getting ready
How to do it...
How it works...
There's more...
See also
Creating admin actions
Getting ready
How to do it...
How it works...
See also
Developing change list filters
Getting ready
How to do it...
How it works...
See also
Customizing default admin settings
Getting ready
How to do it...
How it works...
There's more...
See also
Inserting a map into a change form
Getting ready
How to do it...
How it works...
See also
7. Django CMS
Introduction
Creating templates for Django CMS
Getting ready
How to do it...
How it works...
See also
Structuring the page menu
Getting ready
How to do it...
How it works...
See also
Converting an app to a CMS app
Getting ready
How to do it...
How it works...
See also
Attaching your own navigation
Getting ready
How to do it...
How it works...
See also
Writing your own CMS plugin
Getting ready
How to do it...
How it works...
See also
Adding new fields to the CMS page
Getting ready
How to do it...
How it works...
See also
8. Hierarchical Structures
Introduction
Creating hierarchical categories
Getting ready
How to do it...
How it works...
See also
Creating a category administration interface with django-mptt-admin
Getting ready
How to do it...
How it works...
See also
Creating a category administration interface with django-mptt-tree-editor
Getting ready
How to do it...
How it works...
See also
Rendering categories in a template
Getting ready
How to do it...
How it works...
There's more...
See also
Using a single selection field to choose a category in forms
Getting ready
How to do it...
How it works...
See also
Using a checkbox list to choose multiple categories in forms
Getting ready
How to do it...
How it works...
See also
9. Data Import and Export
Introduction
Importing data from a local CSV file
Getting ready
How to do it...
How it works...
There's more...
See also
Importing data from a local Excel file
Getting ready
How to do it...
How it works...
There's more...
See also
Importing data from an external JSON file
Getting ready
How to do it...
How it works...
See also
Importing data from an external XML file
Getting ready
How to do it...
How it works...
There's more...
See also
Creating filterable RSS feeds
Getting ready
How to do it...
How it works...
See also
Using Tastypie to create API
Getting ready
How to do it...
How it works...
See also
Using Django REST framework to create API
Getting ready
How to do it...
How it works...
See also
10. Bells and Whistles
Introduction
Using the Django shell
Getting ready
How to do it...
How it works...
See also
Using database query expressions
Getting ready
How to do it...
How it works...
See also
Monkey-patching the slugify() function for better internationalization support
Getting ready
How to do it...
How it works...
There's more...
See also
Toggling the Debug Toolbar
Getting ready
How to do it...
How it works...
See also
Using ThreadLocalMiddleware
Getting ready
How to do it...
How it works...
See also
Caching the method return value
Getting ready
How to do it...
How it works...
See also
Using Memcached to cache Django views
Getting ready
How to do it...
How it works...
See also
Using signals to notify administrators about new entries
Getting ready
How to do it...
How it works...
See also
Checking for missing settings
Getting ready
How to do it...
How it works...
See also
11. Testing and Deployment
Introduction
Testing pages with Selenium
Getting ready
How to do it...
How it works...
See also
Testing views with mock
Getting ready
How to do it...
How it works...
See also
Testing API created using Django REST framework
Getting ready
How to do it...
How it works...
See also
Releasing a reusable Django app
Getting ready
How to do it...
How it works...
See also
Getting detailed error reporting via e-mail
Getting ready
How to do it...
How it works...
See also
Deploying on Apache with mod_wsgi
Getting ready
How to do it...
How it works...
There's more...
See also
Setting up cron jobs for regular tasks
Getting ready
How to do it...
How it works...
See also
Creating and using the Fabric deployment script
Getting ready
How to do it...
How it works...
There's more...
See also
##第一章, **从Django1.6开始**
指导你通过必要的基本配置以新建任意Django项目。本章覆盖内容有,虚拟环境,会话控制,以及项目设置。
* 使用虚拟环境
* 创建一个项目文件结构
* 用pip处理项目依赖
* 在项目中包括外部的依赖
* 在settings中定义相对路径
* 为Subersion用户动态地配置STATIC_URL
* 为Git用户动态地配置STATIC_URL
* 创建并包括本地设置
* 把UTF-8设置为MySQL配置的默认编码格式
* 设置Subversion的忽略特性
* 创建Git的忽略文件
* 删除Python编译文件
* Python文件中的导入顺序
* 定义可重写的app设置
##第二章,**数据库结构**
教会你如何写可重复使用的代码片段并用在模型中。当你创建一个新的app时,要做的第一件就是定义模型。你也告知如何使用Sou
* 使用模型mixin
* 使用相对URL方法创建一个模型mixin
* 创建一个模型mixin以处理日期的创建和修改
* 创建一个模型mixin以处理meta标签
* 创建一个模型mixin以处理通用关系
* 处理多语言字段
* 使用South迁移 (译者注:Django1.7中已经有了自己迁移模块,故内容将略去)
* 使用South将一个外键改变为多対多字段
##第三章,**表单和视图**
向你演示使用一些模式为数据创建视图和表单
* 传递HttpRequest到表单
* 利用表单的save方法
* 上传图片
* 使用django-crispy-forms生成表单布局
* 过滤对象列表
* 管理分页列表
* 编写类视图
* 生成PDF文档
##第四章,**模板和JavaScript**
向你演示把模板和JavaScript放在一起使用的实际例子。我们把模板和JavaScript放在一起是因为,总是通过渲染模板将内容展现给用户,在现代的网站中,JavaScript对于更丰富的用户体验也是必要的。
* 整理base.html模板
* 包含JavaScript设置
* 使用HTML5数据属性
* 在弹窗中显示对象细节
* 实现不间断滚动
* 实现Like部件
* 使用Ajax上传图片
##第五章,**自定义模板过滤器和标签**
本章向你演示如如何创建并使用模板过滤器和标签,因为,Django的模板系统包含内容极广,因此可以有更多的东西对不同的应用场景来添加。
* 遵循模板过滤器和标签的约定
* 创建一个模板过滤器以显示经过的天数
* 创建一个模板过滤器提取第一个媒体对象
* 创建一个模板过滤器使URL可读
* 创建一个模板标签在模板中载入一个QuerySet
* 创建一个模板标签为模板解析内容
* 创建一个模板标签修改request查询参数
##第六章,**模型管理**
本章,将指导你通过扩展默认管理带上自定义的功能,就和Django框架自带的预构建的模型管理一样好用。
* 定制换表页面中列
* 新建admin的行为
* 开发换表的过滤器
* 为外部的应用交换管理上的设置
* 将地图插入到交换表单
##第七章,**Django CMS**
* 为Django CMS创建模板
* 组织页面按钮
* 将一个应用转换为CMS应用
* 添加自己的导航
* 编写自定义的CMS插件
* 对CMS页面添加新的字段
##第八章,**层级结构**
* 生成层级目录
* 利用django-mptt-admin新建一个目录的管理接口
* 使用django-mptt-tree-editor创建一个目录的管理接口
* 在模板中渲染目录
* 在表单中利用一个单选字段来选择一个目录
* 于表单之中使用一个多选框列表来选择多个字段
##第九章,**数据的导入和导出**
* 从本地的CSV文件中导入数据
* 由本地Excel文件导入数据
* 打外部JSON文件导入数据
* 自外部XML文件导入数据
* 创建可过滤的RSS订阅
* 使用Tastypie为第三方提供数据
##第十章,**附加功能**
* 使用Django的命令行
* Using the Django shell
* The monkey patching slugification function
* The monkey patching model administration
* Toggling Debug Toolbar
* Using ThreadLocalMiddleware
* Caching the method value
* Getting detailed error reporting via e-mail
* Deploying on Apache with mod_wsgi
* Creating and using the Fabric deployment script