Day24
内容回顾:
Model
- 数据库操作
- 验证
class A(MOdel):
user =
email =
pwd =
Form
- class LoginForm(Form):
email = fields.EmailField()
user =
pwd =
- is_valid -> 每一个字段进行正则(字段内置正则)+clean_字段 -> clean(__all__) -> _post_clean
- cleand_data
- error
--------> 推荐 <---------
一、ModelForm
参考博客:
http://www.cnblogs.com/wupeiqi/articles/6229414.html
Model + Form => 验证 + 数据库操作
- class LoginModelForm(xxxxx):
利用model.A中的字段
1. 生成HTML标签:class Meta: ...
2. mf = xxxModelForm(instance=ModelObj)
3. 额外的标签, is_rmb = Ffields.CharField(widget=Fwidgets.CheckboxInput())
4. 各种验证 is_valid() -> 各种钩子...
5. mf.save()
# 或
instance = mf.save(False)
instance.save()
mf.save_m2m()
二、Ajax
参考博客:
http://www.cnblogs.com/wupeiqi/articles/5703697.html
原生
jQuery
伪Ajax操作
时机:
如果发送的是【普通数据】 -> jQuery,XMLHttpRequest,iframe
三、文件上传(预览)
- Form提交
- Ajax上传文件
时机:
如果发送的是【文件】 -> iframe,jQuery(FormData),XMLHttpRequest(FormData),
四、图片验证码 + Session
- session
- check_code.py(依赖:Pillow,字体文件)
- src属性后面加?
五、CKEditor,UEEditor,TinyEditor,KindEditor(***)
参考博客:
http://www.cnblogs.com/wupeiqi/articles/6307554.html
- 基本使用
- 文件上传,多文件上传,文件空间管理
- XSS攻击(过滤的函数或类) 下节课说...
作业():
主站:
http://127.0.0.1:8000/ 博客首页
http://127.0.0.1:8000/zhaofan/1.html 某人的某篇博客
个人博客:
http://127.0.0.1:8000/zhaofan.html 某人的博客
http://127.0.0.1:8000/zhaofan/tag/python.html 某人的博客筛选
http://127.0.0.1:8000/zhaofan/catetory/mvc.html 某人的博客筛选
http://127.0.0.1:8000/zhaofan/date/2011-11.html 某人的博客筛选
个人后台管理:
http://127.0.0.1:8000/backend/base-info.html
http://127.0.0.1:8000/backend/tag.html
http://127.0.0.1:8000/backend/category.html
http://127.0.0.1:8000/backend/article.html
http://127.0.0.1:8000/backend/add-article.html