1.什么是json?
type(json)== Class str
json就是一个特殊的字符串,字符串的形式是字典。
方法:
import json
result=json.dumps(字典,ensure_ascii=False) .py文件中
var dic=JSON.parse(arg); .html文件中
json.dumps(obj,ensure_ascii=False)obj只能是基本数据类型:字典、列表、元组。
-----------------------------------------------------------------------------------------------------------------------------
2.
-----------------------------------------------------------------------------------------------------------------------------
点击时,才绑定单机事件,执行函数
4.xxs攻击
4.HTML中的this
4.1在标签内部绑定事件,如οnclick=f1(this)。
在绑定的f1方法中 this代表该标签对象,如果不传this参数,则this代表Windows对象。
4.2 通过DOM或jequery方式定制事件,则this直接代表该标签。
-----------------------------------------------------------------------------------------------------------------------------
5. cookie与session
![](https://i-blog.csdnimg.cn/blog_migrate/eb72931bad6906a855787e0366cb6d3b.png)
解析:session与cookie是合作关系,用户首次登陆页面,在服务端,session会悄悄生成一个长长的随机字符串,并且该字符串对应了一些有用的参数,如(验证码)。随后,服务端会将该随机字符串放传回到客户端的cookie中。等用户再次请求时,客户端会带着该随机字符串以及有用的参数发送到服务端。服务端先识别该随机字符串,然后看看请求的验证码与自己之前保存的是否一致。一致了,没话说,放行,如果不一致,对不起,不能通过。
-----------------------------------------------------------------------------------------------------------------------------
6.获取文件路径,文件名,文件名后缀
#
取文件后缀>>> os.path.splitext("/root/a.py")('/root/a', '.py')#取目录与文件名>>> os.path.split("/root/a.py")('/root', 'a.py')
7.django url要点
1.url要做路由配置,就要知道哪个app下的url是开始,为什么?
setting中:ROOT_URLCONF = 'PerfectCRM.urls'说明了一切
2.url要做路由配置时,会遇到re_path(r'^kingadmin/', include('kingadmin.urls'))
为什么不能re_path(r'^kingadmin/$', include('kingadmin.urls'))这样写?
$代表结束,而include相当于‘去拼接’的意思,前面写死了,后面还怎么拼接。系统会报路径错误。(一度绝望)
3.
如何理解?
temeplate中:{% url 'url_name' xx xxx}
urls中:re_path(r'^(\w+)/(\w+)/$', views.func,name='url_name'),
可以解释为:
temeplate中:url=路径的起始路径(如果做了路由分转)/xx/xxx/
就相当于url_name把路径定死了,调用我时,给我传两个参数就行了。
4.如何看待:
<span><a href="/a/b/c">aaaaaa</a></span>①
<span><a href="a/b/c">aaaaaa</a></span>②
①中路径以/开始,则代表以根路径开始。
②中路径以a开始,则代表以当前路径的最后一个/开始,如有当前路径最后一个/后有内容,会被覆盖。所以在:
urlpatterns = [ re_path(r'^(\w+)/(\w+)/$', views.table_obj_list,name='table_obj_list'),
中,尽量要以/$结尾。
8.__new__,__init__,__str__
-
class Person(object):
-
"""Silly Person"""
-
def __new__(cls, name, age):
-
print '__new__ called.'
-
return super(Person, cls).__new__(cls, name, age)
-
def __init__(self, name, age):
-
print '__init__ called.'
-
self.name = name
-
self.age = age
-
def __str__(self):
-
return '<Person: %s(%s)>' % (self.name, self.age)
-
if __name__ == '__main__':
-
piglei = Person('piglei', 24)
-
print pigle
代码来源:https://blog.csdn.net/woaidapaopao/article/details/52957449
执行顺序:__new__》__init__》__str__
__new__需要返回值。
9.前端
/**坑了一下午总结: * 双击事件函数名称是:ondblclick ,不是ondbclick * 绑定的函数要指定类型,如func(this,1)和func(this,'a') * 拼接标签字符串技巧:先把要实现的标签写出来,然后首尾用单引号括起来,遇到变量用'+变量名+',遇到双引号则前面加反斜线 */9.jequery中attr()与prop()区别,及使用
.prop()方法应该被用来处理boolean attributes/properties以及在html(比如:window.location)中不存在的properties。其他所有的attributes(在html中你看到的那些)可以而且应该继续使用.attr()方法来进行操作。
10.python中getattr函数
hasattr(object,name)getattr(object,name,default)
setattr(object,name,default)
delattr(object,’name’)