BBS项目 备忘时时更新


建表时fields.E304 错误
需要在setting中重载AUTH_USER_MODEL
AUTH_USER_MODEL = 'users.UserProfile'
users:你的app名
UserProfile:model 表名

"required":"用户名不能为空" #当为空时报的错误

location.href #执行字符串url路径

createsuperuser #添加用户超级管理员

chr# 根据数字返回asc编码值

from django.contrib import auth #导入auth
# PIL 生成图片模块
# Image 生成图片对象
# ImageDraw 生成画笔对象
# ImageFont 生成文字对象
from PIL import Image, ImageDraw, ImageFont

# 定义生成图片对象
img_obj = Image.new(
"RGB", # 图片类型
(250, 35), # 图片大小
color=get_color() # 图片色彩
)
# 定义生成画笔对象
# Draw生成img_obj的画笔对象
draw_obj = ImageDraw.Draw(img_obj)
# 定义生成字体对象
# truetype 生成字体对象,后面参数,字体文件路径,字体大小
font_obj = ImageFont.truetype('static/font/kumo.ttf', size=28)
# 画笔对象对图片中的字体进行修改
draw_obj.text(
(i * 48 + 20, 0), # 字体在图片中的位置
r, # 上面随机数得到的文字内容
get_color(), # 字体颜色
font=font_obj # 字体样式
)
from io import BytesIO
#生成IO对象
tem=BytesIO()
#把图片对象以png格式放到tem对象中
img_obj.save(tem,'png')
#取出tem中的值
data=tem.getvalue()
 <form class="form-horizontal" autocomplete="off" novalidate>
autocomplete="off" #html关闭自动查找
novalidate #禁止浏览器自带的验证

<input accept="image/*" type="file" id="touxiang" name="avatar" style="display: none">
accept="image/*" #选择上传的是什么类型的文件
style="display: none" #隐藏

# 用户上传的文件配置项
MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
#查询media路径下的搭配上面配置项
url(r'^media/(?P<path>.*)$', serve, {"document_root": settings.MEDIA_ROOT})

#登录验证后取用户名,前提在登录时login有存参数
usernmae=request.user.username

#注销
#用 auth.logout(request) 将当前请求的session信息会全部清除
def zhuxiao(request):
auth.logout(request)

#forms对象返回错误
reg_obj.errors

//创建表单对象
var data_obj = new FormData();

ajax参数
processData: false, //告诉jQuery不要去处理发送的数据
contentType: false,// 告诉jQuery不要去设置Content-Type请求头

#each方法 循环cuowu其中的值
$.each(cuowu, function (k, v) {
// k: 字段名 v:报错信息的数组
// 根据字段名找对应的input标签,把错误信息添加到对应位置
//遍历.help-block类,将值改成对应的v,然后再找关系颜色的那个类,将其改为警告红色
$("#id_" + k).next(".help-block").text(v[0]).parent().parent().addClass("has-error");
}

#FileReader类
$('#touxiang').change(function () {
// 找到你选中的那个头像文件
var fileObj = this.files[0];
// 读取文件路径
var fileReader = new FileReader();
fileReader.readAsDataURL(fileObj);
// 等图片被读取完毕之后,再做后续操作
fileReader.onload = function () {
// 设置预览图片
$("#img_tou").attr("src", fileReader.result);
};
#html里的if用法
{# 判断传来的是否有对象,有就调用对象里的值,没有就登录注册#}
{% if user_obj %}
{# 调用对象里的值进行操作#}
<li><img id="img_tou" src="/media/{{ request.user.avatar }}" alt=""></li>
<li><a href="#">{{ request.user.username }}</a></li>
<li><a href="/zhuxiao/">注销</a></li>
{% else %}
<li><a href="/login/">登录</a></li>
<li><a href="/reg/">注册</a></li>
{% endif %}




posted @ 2018-07-03 08:10  yangli0504  阅读(189)  评论(0编辑  收藏  举报