自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(128)
  • 问答 (3)
  • 收藏
  • 关注

原创 基于 Django1.10 文档的深入学习(25)—— Applications 之 基础部分

Applications应用Django包含一个安装的应用程序的注册表,存储配置并提供内省。 它还保留了可用模型的列表。这个注册表简单称为应用程序,它可以在django.apps中使用:>>> from django.apps import apps>>> apps.get_app_config('admin').verbose_name'Admin'Projects and applicati

2017-04-30 11:07:49 2109

原创 Django 报错 'AnonymousUser' object is not iterable 的解决办法

出现这种错误的原因应该是 , 未经过 is_authenticated 的用户使用了 需要经过验证的 用户 才能使用的 功能所导致的在报错的 View 函数中 的对应 逻辑前 加上 if not request.user.is_authenticated(): ...语句就好了‘AnonymousUser’ object is not iterable‘AnonymousUser’ obje

2017-04-28 16:22:42 10267 3

原创 基于 Django1.10 文档的深入学习(24)—— Form and field validation 之 cleaned_data

Form field default cleaning表单域默认清理我们首先创建一个自定义表单字段,验证其输入是一个包含逗号分隔的电子邮件地址的字符串。全班看起来像这样:from django import formsfrom django.core.validators import validate_emailclass MultiEmailField(forms.Field): de

2017-04-28 14:46:10 840

原创 熄灯之后的学习——再读《MySQL必知必会》(10)|| 使用数据处理函数

文本处理函数日期和时间处理函数数值处理函数

2017-04-28 00:33:16 673 1

原创 熄灯之后的学习——再读《MySQL必知必会》(9)|| 创建计算字段

字段field :基本与列 column 的意思相同。经常互换使用,不过数据库列一般称为列,而属于字段通常用在计算字段的连接上。拼接concatenate:将值联结到一起构成单个值。MySQL 中使用Concat() 函数来拼接两个列。对比: concat() 拼接串,即把多个串连接起来形成一个较长的串。 concat() 需要一个或者多个指定的串,各个串之间用逗号分隔。rtrim() 函数可以

2017-04-28 00:30:06 825

原创 基于 Django1.10 文档的深入学习(23)—— QuerySet API reference 之 icontains

icontainsCase-insensitive containment test.Example:Entry.objects.get(headline__icontains='Lennon')SQL equivalent:SELECT ... WHERE headline ILIKE '%Lennon%';

2017-04-27 19:04:52 594

原创 创建一个 Django App 的基本流程

1、startapp appname 2、将该 appname 注册到项目目录下的 settings.py 中的 INSTALLED_APPS 中 3、设计该 app 目录下的 models.py 4、迁移数据 makemigrations appname 5、生成数据表 migrate appname 6、将该 app 的 models 中的内容注册到该 app 目录下的 adminx.

2017-04-27 17:03:42 1973 1

原创 基于 Django1.10 文档的深入学习(22)——Sending email 之 send_mail()

Sending email发送电子邮件虽然Python通过smtplib模块发送电子邮件相对容易,但Django在其上提供了几个光封装。 提供这些包装器可以使发送电子邮件更加快速,以便在开发期间测试电子邮件发送,并为不能使用SMTP的平台提供支持。代码位于django.core.mail模块中。快速的例子两行:from django.core.mail import send_mailsend_ma

2017-04-27 16:02:44 1504

原创 基于 Django1.10 文档的深入学习(21)——The Forms API 之 Form.errors

Form.errors 访问errors属性以获取错误消息的字典:>>> f.errors>{'sender':['输入有效的电子邮件地址。'],'subject':['此字段为必填项.']。在这个字典中,键是字段名称,值是表示错误消息的Unicode字符串列表。 错误消息存储在列表中,因为字段可以有多个错误消息。您可以访问错误,而不必首先调用is_valid()。 您首次调用表单的数据时会调用

2017-04-27 13:03:10 452

原创 基于 Django1.10 文档的深入学习(20)—— Using the Django authentication system 之 login()

所有验证视图这是一个包含django.contrib.auth提供的所有视图的列表。 有关实现细节,请参阅使用视图。login( request, template_name=`registration/login.html`, redirect_field_name='next', current_app=None, extra

2017-04-27 12:56:18 1097 1

原创 基于 Django1.10 文档的深入学习(19)——Working with forms

Working with forms使用表格除非你打算建立只发布内容的网站和应用程序,而不接受访问者的意见,你将需要了解和使用表单。Django提供了一系列工具和库来帮助您构建表单以接受站点访问者的输入,然后处理和响应输入。HTML表单在HTML中,表单是<form> ... </ form>中的元素集合,允许访问者执行输入文本,选择选项,操纵对象或控件等操作,然后将该信息发回到服务器。这些形式的界

2017-04-27 10:52:06 902

原创 基于 Django1.10 文档的深入学习(18)—— Using the Django authentication system 之 LoginRequiredMixin

Using the Django authentication system使用Django认证系统本文档介绍了Django身份验证系统的默认配置。 这种配置已经演变为满足最常见的项目需求,处理相当广泛的任务,并且仔细地实现了密码和权限。 对于认证需求与默认值不同的项目,Django支持大量扩展和定制认证。Django认证一起提供认证和授权,通常被称为认证系统,因为这些功能有些耦合。LoginReq

2017-04-27 00:42:51 2417

原创 基于 Django1.10 文档的深入学习(17)——Customizing authentication 之 Custom users and permissions

Customizing authentication in Django在Django中自定义身份验证Django附带的身份验证对于大多数常见的情况来说都是足够好的,但您可能无法通过开箱即用的默认值来满足要求。 要为您的项目需求定制身份验证,需要了解提供的系统的哪些点是可扩展的或可替换的。 本文档提供了有关如何自定义验证系统的详细信息。认证后端提供可扩展的系统,用于当与用户模型存储的用户名和密码需要

2017-04-27 00:36:11 666

原创 基于 Django1.10 文档的深入学习(16)——Authentication backends 之 class ModelBackend

Authentication backends 验证后端本节详细介绍Django附带的身份验证后端。 有关如何使用它们以及如何编写自己的身份验证后端的信息,请参阅用户身份验证指南的其他身份验证源部分。可用的身份验证后端django.contrib.auth.backends中有以下后端:class ModelBackend: 这是 Django 使用的默认身份验证后端。 它使用由用户标识符和密码组

2017-04-27 00:26:57 931

原创 基于 Django1.10 文档的深入学习(15)——django.contrib.auth.hashers

手动管理用户密码django.contrib.auth.hashers模块提供了一组功能来创建和验证散列密码。您可以独立于用户模型使用它们。check_password(password, encoded)[source] 如果要通过将明文密码与数据库中的散列密码进行比较来手动验证用户,请使用方便函数check_password()。它需要两个参数:要检查的纯文本密码以及数据库中用户密码字段的完整

2017-04-27 00:12:36 1245

原创 基于 Django1.10 文档的深入学习(14)—— Request and response objects 之 HttpResponse objects

HttpResponse objectsclass HttpResponse[source]与由Django自动创建的HttpRequest对象相反,HttpResponse对象是您的责任。 您编写的每个视图都负责实例化,填充和返回HttpResponse。HttpResponse类住在django.http模块中。用法传递字符串典型的用法是将页面的内容作为字符串传递给HttpResponse构造函

2017-04-27 00:04:57 627

原创 基于 Django1.10 文档的深入学习(13)—— Making queries 之 Q objects

Complex lookups with Q objects使用Q对象进行复杂查找关键字参数查询 - 在filter()等中与“AND”一起编辑。 如果需要执行更复杂的查询(例如,使用OR语句的查询),则可以使用Q对象。Q对象(django.db.models.Q)是用于封装关键字参数集合的对象。 这些关键字参数在上面的“字段查找”中指定。例如,这个Q对象封装了一个LIKE查询:from djang

2017-04-26 23:57:03 695

原创 基于 Django1.10 文档的深入学习(13)—— django.core.urlresolvers 之 reverse()

reverse()如果您需要在代码中使用类似于url模板标签的内容,Django将提供以下功能:reverse(viewname,urlconf = None,args = None,kwargs = None,current_app = None)[source]viewname可以是URL模式名称或可调用视图对象。例如,给出以下url:from news import viewsurl(r'^a

2017-04-26 21:18:16 3928

原创 基于 Django1.10 文档的深入学习(12)—— django.shortcuts 之 redirect()

redirect()redirect(to, permanent=False, *args, **kwargs)[source]将HttpResponseRedirect返回给传递的参数的相应URL。这个参数可能是:一个模型:模型的get_absolute_url()函数将被调用。视图名称,可能使用参数:reverse()将用于反向解析名称。一个绝对的或相对的URL,将按原样用于重定向位置。

2017-04-26 21:01:49 4188

原创 基于 Django1.10 文档的深入学习(11)—— django.shortcuts 之 render()

Django shortcut functionsDjango快捷功能软件包django.shortcuts收集了“跨越”多个级别的MVC的帮助函数和类。 换句话说,为方便起见,这些功能/类引入了可控制的耦合。render()render(request,template_name,context = None,content_type = None,status = None,using = No

2017-04-26 20:55:16 6724

原创 基于 Django1.10 文档的深入学习(10)—— django.contrib.auth 之 User model

User modelFieldsclass models.UserUser objects have the following fields:is_staff: 布尔值,指定此用户是否可以访问后台管理站点。is_active: 布尔值。 指定该用户帐户是否应被视为活动的。 我们建议您将此标志设置为False而不是删除帐户; 这样,如果您的应用程序对用户有任何外键,则外键不会中断。这不一定控制用

2017-04-26 20:38:11 665

原创 基于 Django1.10 文档的深入学习(9)—— Extra instance methods 之 get_FOO_display()

Extra instance methods额外的实例方法Model.get_FOO_display() 对于具有选择集的每个字段,该对象将具有一个get_FOO_display()方法,其中FOO是该字段的名称。 此方法返回字段的“可读”值。例如:from django.db import modelsclass Person(models.Model): SHIRT_SIZES = (

2017-04-26 19:53:12 905

原创 基于 Django1.10 文档的深入学习(8)—— Model field reference 之 choices

choicesField.choices一个包含两个项目(例如[(A,B),(A,B)...])的可迭代的迭代(例如,列表或元组))用作该字段的选择。 如果给出这一点,默认窗体小部件将是一个带有这些选项而不是标准文本字段的选择框。每个元组中的第一个元素是要在模型上设置的实际值,第二个元素是可读的名称。 例如:YEAR_IN_SCHOOL_CHOICES = ( ('FR', 'Freshma

2017-04-26 19:33:12 737

原创 基于 Django1.10 文档的深入学习(7)—— Configuring applications

Configuring applications配置应用程序要配置一个应用程序,子类AppConfig,并将虚线路径放在INSTALLED_APPS中的该子类中。当INSTALLED_APPS只包含应用程序模块的虚线路径时,Django会检查该模块中的default_app_config变量。如果定义了它,那该应用程序的AppConfig子类的虚线路径。如果没有default_app_config,

2017-04-26 17:52:45 1083

原创 在 django 1.10.6的环境下使用 xdamin

可用的 xadmin 下载地址安装方法复制 xadmin 目录到你的项目pip install httplib2 django-formtools django-crispy-forms# setting.pyINSTALLED_APPS = [ ..., 'xadmin', 'crispy_forms',]# urls.pyimport xadminurlpatter

2017-04-26 14:44:39 829

原创 基于Django的在线MOOC学习系统(5)——创建其余 App 并设计 对应的models.py

site_manage App 用于站点的管理 暂时只有一个数据表实体关系图:

2017-04-26 14:25:56 1557

原创 熄灯之后的学习——再读《MySQL必知必会》(8)|| 正则表达式搜索

like 匹配整个列。如果被匹配的文本在列值中出现, LIKE 将不会找到他,相应的行也不会被返回(除非使用通配符)。regexp 在列值内进行匹配,如果被匹配的文本在列值中出现, regexp将会找到他,相应的行将被返回。为区分大小写,可以使用 BINART 关键字,如 where prod_name regexp binary 'JetPack .000'

2017-04-25 23:46:09 462

原创 熄灯之后的学习——再读《MySQL必知必会》(7)|| 通配符过滤

通配符 wildcard :用来匹配值得一部分的特殊字符。 搜索模式 search pattern :由字面值、通配符或两者组合构成的搜索条件。 为了在搜索子句中使用通配符,必须使用 LIKE 操作符。在搜索串中, % 表示任何字符出现任意次数。 根据 MySQL 的配置方式,搜欧式可以是区分大小写的。如果区分大小写,’jet%’ 与 JetPack 1000 将不匹配。 通配符可在搜

2017-04-25 23:38:22 383

原创 基于Django的在线MOOC学习系统(4)——创建 course App 并设计 models.py

创建 course App:设计 models.py:注册 App , 迁移数据:

2017-04-24 23:45:21 840

原创 基于 Django1.10 文档的深入学习(6)—— Translation 之 short_description

Model methods short_description attribute valuesFor model methods, you can provide translations to Django and the admin site with the short_description attribute:from django.db import modelsclass MyThi

2017-04-24 23:31:11 1395 1

原创 基于 Django1.10 文档的深入学习(5)—— Making queries 之 FOO_set

进行查询Making queries创建数据模型后,Django会自动为您提供一个数据库抽象API,您可以创建,检索,更新和删除对象。本文档介绍如何使用此API。有关所有各种型号查找选项的详细信息,请参阅数据模型参考。在本指南(和参考文献)中,我们将参考以下包含Weblog应用程序的模型:from django.db import modelsclass Blog(models.Model):

2017-04-24 23:23:55 519

原创 基于Django的在线MOOC学习系统(3)——创建 user App 并设计 models.py

创建 user App:设计 models.py:在继承 AbstractUser 的基础上,对 PersonalInformation 表进行设计AbstractUser:class AbstractUser(AbstractBaseUser, PermissionsMixin): """ An abstract base class implementing a fully fe

2017-04-24 20:19:34 888

原创 基于 Django1.10 文档的深入学习(4)—— models.py 之 class Meta

class Meta 在其 model 内部提供模型的所有可能的元数据选项verbose_nameOptions.verbose_name A human-readable name for the object, singular: `verbose_name = “pizza”If this isn’t given, Django will use a munged version o

2017-04-24 19:03:28 758

原创 基于 Django1.10 文档的深入学习(3)—— models.py 之 FileField

class FileField(upload_to=None, max_length=100, **options)[source]文件上传字段。 注意: primary_key参数不受支持,如果使用,将引发错误。有两个可选参数:FileField.upload_to 此属性提供了一种设置上传目录和文件名的方式,可以通过两种方式进行设置。 在这两种情况下,该值都将传递给Storage.sav

2017-04-24 18:53:56 2513

原创 基于Django的在线MOOC学习系统(2)——新建项目

一、virtualenv配置1、创建虚拟环建2、激活虚拟环境,安装Django 1.10.6:二、创建 Django 项目1、安装 PyMySQL:2、配置 MySQL 数据库:3、创建新的数据库:4、迁移数据库(测试数据库是否连接成功):

2017-04-24 18:01:36 1569

原创 基于 Django1.10 文档的深入学习(2)—— Settings.py 之 STATIC_*

STATIC_ROOT默认值:None(在开发环境中为此默认值)collectstatic 收集静态文件进行部署的目录的绝对路径。示例:“/var/www/example.com/static/”如果启用了staticfiles contribapp(如在默认项目模板中),则collectstatic管理命令将将静态文件收集到此目录中。 警告 这应该是一个最初的空目标目录,用于将静态文件

2017-04-24 17:05:07 1440

原创 基于 Django1.10 文档的深入学习(1)—— Settings.py 之 MEDIA_ROOT 与 MEDIA_URL

MEDIA_ROOT默认值:”(空字符串)”保存用户上传文件的目录的绝对文件系统路径。示例:“/var/www/example.com/media/” 警告 MEDIA_ROOT和STATIC_ROOT必须具有不同的值。 在介绍STATIC_ROOT之前,通常依靠或回退MEDIA_ROOT来提供静态文件; 然而,由于这可能会带来严重的安全隐患,因此有一个验证检查来防止它。M

2017-04-24 16:40:30 4001

原创 在阿里云上部署Django应用后,页面403错误,始终无法加载静态文件的解决方案

设置好了 nignx uwsgi 还有一大堆乱七八糟的东西之后, 费劲九牛二虎之力,好不容易登上了自己写的网站,结果却发现,静态文件全都没有加载出来… mdzz!!! 改来改去也改不好,万般无奈,又在 bing 上搜索了一下,发现了另一个和我一样蠢得同学 :)nginx迁移到阿里云后静态文件403错误无法访问的原因有哪些?在评论区发现了解决办法 alias /root/mysite/blo

2017-04-23 23:53:39 3321

原创 在阿里云ECS上部署 Django+MySQL+uWSGI+Nginx 项目的基本流程

django==1.10.6python==3.5.2Mysql==5.6uWSGI==2.0.15Nginx==我也不知道是啥版本的阿里云ECS服务器好像是自带 SSH 的,否则的话要安装 SSH 才能用 Xshell 进行连接:apt-get install ssh使用 xshell 连接 阿里云服务器:使用 xftp 向 服务器传送文件:在使用 xshell 成功连接 服务器后,更新一

2017-04-23 18:29:42 3890 1

原创 在Ubuntu16.04下创建只有python3的虚拟环境

用 virtualvenvwrapper 创建的虚拟环境里 既有 py2 还有 py3 ,pip啥的也是乱七八糟的,有脏东西,改用 python3 自带的 venv 创建纯净的,只有 python3 ,pip也只对应 python3 的虚拟环境安装 python3-venv apt-get install python3-venv创建虚拟环境 ,mxonline 为虚拟环境所在的文件夹的名称 ~

2017-04-23 16:44:06 4939

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除