css
html
from django.shortcuts import render,redirect,HttpResponse # Create your views here. def login(request): if request.method=='GET': return render(request,'login.html') else: name=request.POST.get('name') password=request.POST.get('password') print(name) print(password) if name=='ayca' and password=='123': # return redirect('http://www.baidu.com') # 登陸成功重定向到index頁面 return redirect('/index') else: return HttpResponse('用戶名密碼錯誤') def index(request): return render(request,'index2.html')
import os # BASE_DIR:項目根路徑 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # SECRET_KEY:密鑰,項目中默認的一些加密用它(不須要關注,能夠改,可是不能刪) SECRET_KEY = 'dk_' # DEBUG:調試模式,開,開發階段是true,上線階段把它設成false # 設置成開報錯信息更完善 DEBUG = True # ALLOWED_HOSTS:上線階段使用,容許誰訪問 ALLOWED_HOSTS = ['*'] # INSTALLED_APPS 項目全部的app,新建的app要在裏面註冊 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 'app01.apps.App01Config', 'app01', # 'app02.apps.App02Config', # 'app100' # ] # MIDDLEWARE 中間件 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', ] # ROOT_URLCONF 根路由是哪一個文件,根路由的位置能夠變 ROOT_URLCONF = 'day60.urls' # TEMPLATES 模板文件存放路徑(若是使用django-admin建立的項目,須要手動配,不然找不到) TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')] , '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', ], }, }, ] # WSGI_APPLICATION wsgi服務器使用的是哪一個 WSGI_APPLICATION = 'day60.wsgi.application' # DATABASES 數據庫連接配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } # 不用管(內置app相關) AUTH_PASSWORD_VALIDATORS = [ { 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', }, { 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', }, { 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', }, { 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', }, ] # 國際化相關,語言,時區 LANGUAGE_CODE = 'en-us' TIME_ZONE = 'UTC' USE_I18N = True USE_L10N = True USE_TZ = True # 靜態文件配置相關 STATIC_URL = '/static/' # 再配一個STATICFILES_DIRS=列表(列表內寫路徑),單詞一個字母都不能錯 STATICFILES_DIRS=[ os.path.join(BASE_DIR,'static'), ]
from django.conf.urls import url from django.contrib import admin from app01 import views from app02 import views as views2 # urlpatterns列表,列表內放了url函數的執行結果 # 使用很簡單,複製一行,改一下第一個參數(正則表達式),第二個參數是視圖函數內存地址 urlpatterns = [ url(r'^admin/', admin.site.urls), # 在內部,請求來了,路徑匹配成功,內部自動調用index(request),把request傳入 # url(r'^index', views.index), # 登陸小案例 url(r'^login', views2.login), url(r'^index', views2.index), ]
把已下載好的bootstrap直接拉入,並導入index2裏jquery
jQuery相關網站 官網 https://jquery.com/ 文檔API: http://jquery.cuishifeng.cn/index.html #直接打開復制粘貼到本身建立的.js / .min.js文件下 BootCDN jQuery各個版本地址: https://www.bootcdn.cn/jquery/ #方式一:本地引入 <script src="jquery-3.5.1.min.js"></script> <script> //注意,必定在引入jQuery以後,再使用jQuery提供的各類操做 </script> #方式二:直接使用CDN <script src="https://cdn.bootcss.com/jquery/3.5.1/jquery.js"></script> <script> code... </script>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="/static/bootstrap/css/bootstrap.css"> <script src="/static/js/jquery.min.js"></script> <title>首頁</title> </head> <body> <nav class="navbar navbar-inverse navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> <span class="sr-only">導航</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">Project name</a> </div> <div id="navbar" class="navbar-collapse collapse"> <form class="navbar-form navbar-right"> <div class="form-group"> <input type="text" placeholder="Email" class="form-control"> </div> <div class="form-group"> <input type="password" placeholder="Password" class="form-control"> </div> <button type="submit" class="btn btn-success">Sign in</button> </form> </div><!--/.navbar-collapse --> </div> </nav> <!-- Main jumbotron for a primary marketing message or call to action --> <div class="jumbotron"> <div class="container"> <h1>標題1 本身寫</h1> <p>This is a template for a simple marketing or informational website. It includes a large callout called a jumbotron and three supporting pieces of content. Use it as a starting point to create something more unique.</p> <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more »</a></p> </div> </div> <div class="container"> <!-- Example row of columns --> <div class="row"> <div class="col-md-4"> <h2>Heading</h2> <p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p> <p><a class="btn btn-default" href="#" role="button">View details »</a></p> </div> <div class="col-md-4"> <h2>Heading</h2> <p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. </p> <p><a class="btn btn-default" href="#" role="button">View details »</a></p> </div> <div class="col-md-4"> <h2>Heading</h2> <p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p> <p><a class="btn btn-default" href="#" role="button">View details »</a></p> </div> </div> <hr> <footer> <p>© 2016 Company, Inc.</p> </footer> </div> <!-- /container --> </body> </html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="/static/bootstrap/css/bootstrap.css"> <title>Title</title> </head> <body> <div class="row"> <div class="col-md-6 col-md-offset-3"> <h1 class="text-center">登陸功能</h1> <form action="" method="post"> <div class="form-group"> <label for="">用戶名:</label> <input type="text" name="name" class="form-control"> </div> <div class="form-group"> <label for="">密碼:</label> <input type="password" name="password" class="form-control"> </div> <div class="text-center"> <input type="submit" value="登陸" class="btn btn-success"> </div> </form> </div> </div> </body> </html>