本文實例講述了python+Django+pycharm+mysql 搭建首個web項目。分享給大家供大家參考,具體如下:
前面的文章記錄了環境搭建的過程,本節記錄首個web項目調試
首先檢查安裝的模塊,輸入dos命令 pip list, 會顯示已安裝的模塊,看是否有Django,PyMySQL模塊
C:/Users/Administrator/PycharmProjects>pip listDEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.Django (2.0.1)pip (9.0.1)PyMySQL (0.8.0)pytz (2017.3)setuptools (28.8.0)
1、然后開始創建項目: 運行PyCharm, 菜單選File->New project 彈出對話框

在對話框中左側選Django ,項目名稱修改為mysite,點Create按鈕創建
然后點擊運行,即可看到web項目啟動,并提示 Starting development server at http://127.0.0.1:8000/
點擊鏈接即可在瀏覽器看到默認網頁,創建成功
2. 創建APP
在每個django項目中可以包含多個APP,相當于一個大型項目中的分系統、子模塊、功能部件等等,相互之間比較獨立,但也有聯系。所有的APP共享項目資源。
在pycharm下方的terminal終端中輸入命令:
python manage.py startapp cmdb
這樣就創建了一個叫做cmdb的APP,django自動生成“cmdb”文件夾。
3. 修改mysite/urls.py文件,修改后以下:
from django.urls import pathfrom cmdb import viewsfrom django.conf.urls import urlurlpatterns = [# path('admin/', admin.site.urls),url(r'^index/',views.index)]4.修改cmdb/views.py文件
from django.shortcuts import renderfrom django.shortcuts import HttpResponseimport pymysql# Create your views here.# 打開數據庫連接db = pymysql.connect(host="192.168.1.100", user="root", password="abc123", db="testdb", port=3306)# 使用cursor()方法獲取操作游標cur = db.cursor()def index(request): start = 10 limit = 10 if request.method == "POST": start = request.POST.get("start", None) limit = request.POST.get("limit", None) sql = "SELECT * FROM `siterecord` WHERE 1 limit %s,%s" % (start, limit) try: cur.execute(sql) # 執行sql語句 results = cur.fetchall() # 獲取查詢的所有記錄 except Exception as e: raise e return render(request, "index.html", {"results":results})主要是連接數據庫,根據網頁界面輸入的start,limit查詢數據庫記錄,并把記錄返回給頁面輸出
5.創建template/index.html文件
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript" src="/static/js/test.js"></script></head>用戶輸入<hr><form action="/index/" method="post"> 開始: <input type="text" name="start"/><br> 條數:<input type="text" name="limit"/><br><input type="submit" value="提交"><br></form><hr><h1>訪問記錄展示</h1><table border="1"> <thead> <th>id</th> <th>softid</th> <th>visittime</th> <th>ip</th> </thead> <tbody> {% for row in results %} <tr> <td>{{ row.0 }}</td> <td>{{ row.1 }}</td> <td>{{ row.2 }}</td> <td>{{ row.3 }}</td> <tr>{% endfor %} </tr> </tbody></table></body></html>
新聞熱點
疑難解答