• 初试django


    创建django程序:django-admin startproject [name]

    python manage.py runserver 

    #字符串

    return HttpResponse('')

    #自动找到模板路径下的html文件,读取内容并返回给用户

    return render(request,'[html]')

    1.创建project

    2.配置

      -模板路径

        

    TEMPLATES = [
    {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [os.path.join(BASE_DIR, 'template')],
    'APP_DIRS': True,
    'OPTIONS': {
    'context_processors': [
    'django.template.context_processors.debug',
    'django.template.context_processors.request',
    'django.contrib.auth.context_processors.auth',
    'django.contrib.messages.context_processors.messages',
    ],
    },
    },
    ]
     -静态文件路径
      
    STATIC_URL = '/static/' #前缀
    STATICFILES_DIRS=(
    os.path.join(BASE_DIR, 'pageStyle'), #逗号很关键不然要报错
    )
    3.额外配置
      

    MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    #'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    ]
    4.url对应关系
    /login/ login
    def login(request):
      request.method
      request.POST  ->请求体
      request.GET  ->请求头中的url中
      return HttpResponse()
      return render(request, 'login.html', {字典msg})
      request redirect('要跳转的网址')

    在django里面的h5 from请求中action是把表单数据提交到action里面的网页里面去

    所以action里的内容要写网页名称而不能写处理这个请求的函数名称 

    所以在urls.py中的路由

    是指每当访问add-class.html页面时提交给view.py的add_class函数处理

    这个时候的add_class就要把用GET和POST请求的方法都考虑到

    而asp.nest中MVC :

     可以在发起页面请求的时候就考虑GET 和 POST的不同

     用post请求的时候可以收到get的传参数

    django中有Form组件验证(类似于asp.net mvc中)

     vscode加载已有的python环境

     母版:

     {%  extends 'layout.html'%}

     {% block name%} 

     {% endblock%}

    一般css js 可以用{%block css/ js%}

     cookies扩展签名:

    django:

    1.路由系统

    2.视图函数 cbv, fbv 。class basic view  。  function basic view。

    3.ORM operation

     

     

    在project里面创建app:  python manage.py startapp 【name】

    sec 网页排名 

    路由系统:

     正则表达式、动态路由

     

     

     re_path()

     



     伪静态(seo 比重越高)

    
    

     

    路由分发:

    路由系统之别名反向生成url(可用于 action 和 href的链接)

     

    数据库ORM:

    操作之前:

    DATABASES = {
        'default':{
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'test',
            'USER': 'root',
            'PASSWORD': '',
            'HOST': 'localhost',
            'PORT': 3306,
        }
    }

    解决django3.0 mysql 不兼容问题:

    下载最新的mysqldb 然后

    Django根据数据库表反向生成Model:https://blog.csdn.net/diao1057/article/details/98472327

    python orm操作:

    from appone import models

    #新增

    models.[tablename].objects.create([字段的值])

     #查找

    models.[tablename].objects.all()

    models.[tablename].objects.filter([条件])

    #删除

    models.[tablename].objects.filter([条件]).delete()

    #更新

    models.[tablename].objects.filter([条件]).update([更新的字段])

  • 相关阅读:
    另一种方式实现事务码SE16里的结果集修改
    如何修改Fiori Launchpad里Tile计数调用的时间间隔
    Opportunity的chance of success的赋值逻辑
    Smart template的控件能否当成普通控件来用
    一个查看UI5控件所有公有方法的小技巧
    到底哪种类型的错误信息会阻止business transaction的保存
    Java实现 LeetCode 453 最小移动次数使数组元素相等
    Java实现 LeetCode 453 最小移动次数使数组元素相等
    Java实现 LeetCode 453 最小移动次数使数组元素相等
    Java实现 LeetCode 452 用最少数量的箭引爆气球
  • 原文地址:https://www.cnblogs.com/Oliva/p/12310581.html
Copyright © 2020-2023  润新知