前言:

主要是关于JavaScript的高级部分以及Django

主要内容:

一、jQuery

  事件绑定:

  DOM事件绑定: -直接在标签上绑定

    第一种:

    $('.title').click(function(){

    //this

    var v = $(this).text();

    console.log(v);

})

    第二种:

    $('.title').bind('click',function(){

    var v = $(this).text();

})

    第三种:

    $('.c1').delegate('.title','click',function(){

    var v = $(this).text();

})

    第四种:

    $('.c1').on('click','.title',function(){

      var v = $(this).text();

})

  分析:

  上面的3个在内部调用的其实就是第4个。

前面2个是直接绑定,后面2个是委托绑定。

  下面是HTML的标签:

  

               <div class='c1'>
<div>
<div class='title'>菜单一</div>
<div class='content'>内容 一</div>
</div>
<div>
<div class='title'>菜单一</div>
<div class='content'>内容 一</div>
</div>
<div>
<div class='title'>菜单一</div>
<div class='content'>内容 一</div>
</div>
<div>
<div class='title'>菜单一</div>
<div class='content'>内容 一</div>
</div>
</div>

二、JavaScript高级

页面框架加载完成,使用:希望查看页面立即执行的操作

$(function(){

  ......

})

阻止默认事件

return false;

例如:

三、web框架本质

就是socket

四、Django

1、Django请求生命周期?

客户端,服务器端,服务器端最前面有个URL,比如定义了一个/index,它对应了一个函数f1()  ,一个一个对应关系就类似这样子,程序运行起来,对应关系就放在服务器内存了,有人请求,就一个一个匹配,匹配成功了,那就触发相对应的函数执行就可以了。
那么这个函数给我返回的内容是什么?返回的是字符串
 
->URL对应关系(匹配) -》视图函数(views)-》返回给用户字符串
>URL对应关系(匹配) -》视图函数(views)-》打开一个HTML文件,读取内容
 
2、创建Django project
django-admin startproject mysite
cd mysite
python manage.py startapp cmdb
 
mysite:
配置文件相关:
  • url.py    settings.py
  • 创建APP的时候
  • views.py
  • admin.py
  • models.py 创建数据库表,用它来操作数据库表
3、配置
模板路径
静态文件路径
4、编写程序
a  url.py
/index/ 对应一个函数func
b    views.py
  • def  func(request):
  • #包含所有的请求数据
  • return HttpResponse(字符串)
  • return   render(request,index.html ,{‘ ’})
  • return  redirect (‘URL’)
c   模板语言
return render(request,'index.html',{'li':[11,22,33]})
for循环
{% for item in  %}
{% endfor %}
 
====索引用的是点=====
{{ item.0 }}
 
1、快速创建一个Django项目
①使用命令,创建APP
 
②、新建一个static目录
③、修改配置,从上往下修改,setting.py文件
注释掉下面这行
  1. # 'django.middleware.csrf.CsrfViewMiddleware',
新增路径
  1. STATICFILES_DIRS = (
    os.path.join(BASE_DIR,'static'),
    )
④、写URL
业务是写在APP里面的,所以先在APP下面的view.py写如下
  1. from django.shortcuts import render,HttpResponse
    
    # Create your views here.
    
    def index(request):
    return HttpResponse('index')
然后在URL写入
  1. from app01  import views
    urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
    ]
 然后把程序启动起来
 
提交,get提交放在URL上面,post提交放在内容里面
 
GET:   获取数据
POST: 提交数据
 
2、写个项目
提交表单,跳转
需要有的就是一个登陆界面,放在templates里面
  1. <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    </head>
    <body>
    <form action="/login/" method="POST">
    <p>
    <input type="text" name="user" placeholder="用户名">
    </p>
    <p>
    <input type="password" name="pwd" placeholder="密码">
    </p>
    <p>
    <input type="submit" value="提交">
    </p>
    </form>
    </body>
    </html>
修改app01里面的views.py
  1. from django.shortcuts import render,HttpResponse,redirect
    
    # Create your views here.
    
    def index(request):
    return HttpResponse('index') def login(request):
    if request.method == "GET":
    return render(request,'login.html')
    elif request.method == "POST":
    u = request.POST.get('user')
    p = request.POST.get('pwd')
    if u == 'alex' and p == '':
    return redirect('/index/')
    else:
    return render(request,'login.html')
    else:
    return redirect('/index/')
修改urls.py
  1. from django.conf.urls import url
    from django.contrib import admin from app01 import views
    urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', views.index),
    url(r'^login/', views.login),
    ]
这样就可以了。
实现效果如下,登陆用户名认证后跳转到index页面
 
 
 
over

一个初学者的辛酸路程-初识Django的更多相关文章

  1. 一个初学者的辛酸路程-依旧Django

    回顾: 1.Django的请求声明周期?   请求过来,先到URL,URL这里写了一大堆路由关系映射,如果匹配成功,执行对应的函数,或者执行类里面对应的方法,FBV和CBV,本质上返回的内容都是字符串 ...

  2. 一个初学者的辛酸路程-初识Python-1

    前言 很喜欢的一句话,与诸位共勉. 人的一切痛苦,本质上都是对自己无能的愤怒----王小波. 初识Python 一.它的爸爸是谁 首先,我们需要认识下面这位人物. 他是Python的创始人,吉多范罗苏 ...

  3. 一个初学者的辛酸路程-继续Django

    问题1:HTTP请求过来会先到Django的那个地方? 先到urls.py  ,里面写的是对应关系,1个URL对应1个函数名. 如果发URL请求过来,到达这里,然后帮你去执行指定的函数,函数要做哪些事 ...

  4. 一个初学者的辛酸路程-基于Django写BBS项目

    前言 基于Django的学习 详情 登录界面 找个模板 http://v3.bootcss.com/examples/signin/ 右键,检查源码     函数 def login(request) ...

  5. 一个初学者的辛酸路程-python操作SQLAlchemy-13

    前言 其实一开始写blog,我是拒绝的,但是,没办法,没有任何理由抗拒.今天呢,要说的就是如何使用Python来操作数据库. SQLAlchemy SQLAlchemy是Python编程语言下的一款O ...

  6. 一个初学者的辛酸路程-FTP-9

    前言 今天,我要描述一个FTP的故事 主要内容 嗯,今天主要以阶梯性的形式来做一个FTP项目. 第一步: 我要实现这么一个功能,一个FTP客户端,1个FTP服务端,2端建立连接以后可以进行通讯. 服务 ...

  7. 一个初学者的辛酸路程-socket编程-8

    前言: 你会发现会网络是多么幸福的事情 主要内容: socket 概念: socket本质上就是2台网络互通的电脑之间,架设一个通道,两台电脑通过这个通道来实现数据的互相传递.我们知道网络通信都是基于 ...

  8. 一个初学者的辛酸路程-Python基础-3

    前言 不要整天沉迷于学习-. 字典 一.我想跟你聊聊字典 1.为何要有字典? 大家有没有想过为什么要有字典?有列表不就可以了吗? 也许大家会这么认为,我给大家举个例子,大家就明白了. 比如说,我通讯录 ...

  9. 一个初学者的辛酸路程-了解Python-2

    前言 blog花了一上午写的,结果笔记本关机了,没有保存,找不到了,找不到了啊,所以说,你看的每一篇blog可能都是我写了2次以上的--.哎!! 代码改变世界,继续......... Python基础 ...

随机推荐

  1. Android(java)学习笔记69:短信发送器

    1. 一般我们第一步都是先创建这个main.xml布局文件,这是良好的习惯: <?xml version="1.0" encoding="utf-8"?& ...

  2. 中期ppt制作

    陀螺仪的使用解释:https://zhuanlan.zhihu.com/p/29244429 手机坐标轴的图片:http://jcjs.siat.ac.cn/ch/reader/create_pdf. ...

  3. 前端JavaScript之BOM

    BOM:浏览器对象模型,操作浏览器部分功能的API.比如让浏览器自动滚动. 1.window对象 所有浏览器都支持 window 对象.概念上讲.一个html文档对应一个window对象.功能上讲: ...

  4. 用纯css改变默认的radio和checkbox的样式

    利用css的label的伪类(::before)代替checkbox和radio效果: 优点:需要图片来调整选中前和选中后的样式,纯css搞定 缺点:兼容性,IE8以下不支持 在线例子: css改变默 ...

  5. 【Java】多线程相关复习—— 线程的创建、名字、运行情况以及顺序控制(join方法) 【一】

    一.创建线程的三种方式 · 继承Thread类 · 实现Runnable接口 · 实现Callable接口 二. 线程状态 · 线程名字 getName() · 线程活动情况 isAlive() · ...

  6. 解题:在下面画线的地方填任何代码,使得最终输出 'hello world',至少写五个不同思路的方案

    今天(已经好些天前了...),群里面(JS前端开发跳板6群[81501322])有个群友问了这样一个问题. 如题:在下面画线的地方填任何代码,使得最终输出 'hello world',至少写五个不同思 ...

  7. DFS练习-HDU1010

    题目来源:HDU1010 DFS的基本原则已经差不多了,但是一些技巧仍然比较难想,所以还是加强练习,然后总结一下. 还是先看题意 ,指定迷宫的长,宽以及走出迷宫的具体时间N,M,T. 其中(1 < ...

  8. LEA指令与MOV指令区别

    Tips: LEA指令与MOV指令的区别: ① MOV指令是 数据        传送指令-------传送数据 LEA指令是   有效地址 传送指令-------取偏移地址 ② MOV OPRD1 ...

  9. 【Python 2 到 3 系列】 print 是函数

    v3.0 以前,print一直作为语法结构存在,他是python语法的一部分:这个理解起来可能有点蹩脚,但的确是这样. print 一直被定以为一个statement,也就是说,他跟return/tr ...

  10. HTML+CSS : 笔记整理(3 移动端布局简单了解)

    流体布局:宽度用百分比,计算真实宽度用函数 : width: calc(25% - 4px); box-sizing: 1.content-box:默认计算方式 ,宽度和高度分别应用到元素的内容框.在 ...