第四十三章:Django 基础知识

it2025-11-05  10

路由系统        1. 伪静态:      https://www.cnblogs.com/linhaifeng/articles/7133167.html          伪静态的原因:      a. 美观      b. seo (搜索引擎优化技术): 就是研究各大搜索引擎的收录规则    2. 路由分发:      url:         通过正则匹配完成路由的分发      3.  django创建app:          python3 manage.py startapp 自定义app名称          app02:            admin.py : 写和django-admin相关的配置 创建app 将功能分快化易于维护        4.路由分组          总urls.py;      url(r'^app02/', include('app02.urls')),      url(r'^app03/', include('app03.urls')),          分appurls.py:           from app03 import views      urlpatterns = [       url(r'^students/', views.studnets)      ]            函数视图       FBV:          function based view        CBV:          class based view          urls.py:      url(r'^login/', views.Login.as_view()),          views.py:      from django.views import View      class Login(View):       def get(self, request):        return render(request, "login.html")       def post(self, request):        uname  = request.POST.get('username')        print(uname)        return HttpResponse('ok')             原理:      'get': 请求数据      'post':提交数据      'delete': 删除数据      'put': 更新数据      'patch': 更新部分数据         ps:       form表单提交 只支持get、post        ajax支持            核心:           def dispatch(self, request, *args, **kwargs):         super(Login, self).dispatch(request, *args, **kwargs)                     ORM (操作数据库pymysql)       1. orm配置:     a.创建数据库          b.配置mysql数据库的链接:      DATABASES = {       # 'default': {       #     'ENGINE': 'django.db.backends.sqlite3',       #     'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),       # }       'default': {        'ENGINE': 'django.db.backends.mysql',        'NAME': 's8day61',    ## 数据库名称        'USER': 'root',        'PASSWORD': '123',    ## 安装 mysql 数据库时,输入的 root 用户的密码        'HOST': '127.0.0.1',       }      }          c. 注册app:      INSTALLED_APPS = [       'django.contrib.admin',       'django.contrib.auth',       'django.contrib.contenttypes',       'django.contrib.sessions',       'django.contrib.messages',       'django.contrib.staticfiles',       'app02',       'app03'      ]           d. 需要将mysqldb换成pymysql      python3:       pymysql            python2:       MySQLdb            app下的 __init__.py文件              import pymysql       pymysql.install_as_MySQLdb()                e:创建表 命令:            python  manage.py makemigrations            python manage.py migrate   

转载于:https://www.cnblogs.com/haojunliancheng/p/11191319.html

相关资源:数据结构—成绩单生成器
最新回复(0)