在每個diango項目中能夠包含多個APP,至關於大型項目中的分系統、子模塊、功能部件等。相互之間比較獨立,但也有聯繫。css
在pycharm下方的Terminal終端中輸入命令:html
ptyhon manage.py startapp app01python
就能夠建立一個名爲app01的APP,Django自動生成app01文件夾mysql
建立好以後須要在settings中進行配置註冊sql
模板文件通常都存放在templates文件夾下,該文件夾也就是html文件們的歸置目錄,使用pycharm建立Django項目時,該文件夾是默認添加的,若是是本身建的Django項目,就須要在settings文件夾中進行配置註冊。數據庫
咱們能夠將html文件返回給用戶,可是還須要一些其餘類型的文件,如css,js和其餘的插件,全部在Django中,通常將靜態文件放在static目錄中。因此須要在項目目錄下新建一個static文件夾。django
爲了讓Django找到這個目錄,依然須要對settings進行配置app
而後在html文件中,就能夠引入js文件了post
login.htmlfetch
<body> <!-- action:提交給後臺的地址,有三種寫法 --> <!-- 1.http://127.0.0.1:8000/login --> <!-- 2./login/ --> <!-- 3.空 --> <form action="/login/" method="post"> <p> 用戶名:<input type="text" name="name" class="form-control"> </p> <p> 密碼:<input type="text" name="pwd" class="form-control"> </p> <input type="submit" value="提交"> </form> </body>
views.py
def login(request): # request.method--前臺提交過來請求的方式 if request.method == "GET": return render(request, "login.html") elif request.method == "POST": # request.POST(至關於字典)--post形式提交過來的數據 # request.POST.get("name")--推薦用get取值(取出列表最後一個值) name = request.POST.get("name") pwd = request.POST.get("pwd") # 鏈接數據庫 conn= pymysql.connect(host='127.0.0.1', port=3306, db='abc', user='root', password='123456') cur = conn.cursor() # 防止sql注入漏洞,推薦如下寫法 cur.execute('select * from user where name=%s and password=%s', [name, pwd]) user = cur.fetchone() if user: return HttpResponse("登陸成功") else: return HttpResponse("密碼或用戶名錯誤")
get:獲取數據,頁面,攜帶數據是不重要的數據(數據量有大小限制)
post:日後臺提交數據
一、render:返回頁面,默認回去templates中來,因此須要注意路徑的配置
二、redirect:重定向
三、HttpResponse:返回字符串
ORM即Object Relational Mapping,全稱爲對象關係映射 使用方式:鏈接mysql數據庫 在settings文件中配置: 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'PORT': 3306, 'USER': 'root', 'PASSWORD': 'admin', 'NAME': 'lqz', } 還須要在app下的__init__.py中寫: import pymysql pymysql.install_as_MySQLdb() 而後在models文件中新建一個類,該類就是數據庫中的數據表 class User(models.Model): # 自增int類型,主鍵 id = models.AutoField(primary_key=True) # name和pwd是varchar類型,長度是32 name=models.CharField(max_length=32) pwd=models.CharField(max_length=32) 接下來要在pycharm的teminal中經過命令建立數據庫的表了。有2條命令,分別是: 1.python manage.py makemigrations ---記錄如下數據庫的變化 2.python manage.py migrate ---將變化同步到數據庫中