設定與探索 Django 的管理面板
Django 的管理面板是最強大且用戶友好的快速開發功能之一。在本指南中,我們將逐步從頭開始設定 Django 專案並探索 Django 管理面板。請依照下列步驟建立項目,安裝 Django,並開始使用管理面板。
第 1 步:設定虛擬環境
首先,讓我們在工作目錄中建立一個虛擬環境。打開終端並運行。
$ python3 -m venv env
接下來,啟動虛擬環境:
- 對於 Windows:
env\Scripts\activate
- 對於 macOS/Linux:
source env/bin/activate
第 2 步:安裝 Django
啟動虛擬環境後,透過運行安裝 Django:
pip install django
第 3 步:建立 Django 專案
設定虛擬環境並安裝Django後,建立新的Django專案:
$ django-admin startproject mysite $ cd mysite
這將建立以下項目結構:
mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.py
第 4 步:建立並連接應用程式
接下來,在 Django 專案中建立一個新應用程式。我們將應用程式核心命名為:
$ python3 manage.py startapp core
要將應用程式連接到您的項目,請將其新增至 mysite/settings.py 中的 INSTALLED_APPS 清單中:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'core', # Add this line ]
第 5 步:建立模型
在核心應用程式內,開啟 models.py 並定義以下 Postand Comment 模型:
from django.db import models class Post(models.Model): title = models.CharField(max_length=200) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.title class Comment(models.Model): post = models.ForeignKey(Post, related_name='comments', on_delete=models.CASCADE) author = models.CharField(max_length=100) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) def __str__(self): return f'Comment by {self.author} on {self.post}'
第 6 步:應用遷移
定義模型後,執行以下命令來建立遷移並將其應用到資料庫:
$ python3 manage.py makemigrations $ python3 manage.py migrate
*第 7 步:在管理面板中註冊模型
*
現在模型已經設定完畢,讓我們在 Django 管理面板中註冊它們。開啟 core/admin.py 並加入以下程式碼:
from django.contrib import admin from .models import Post, Comment class CommentInline(admin.TabularInline): model = Comment extra = 1 # Allows one extra empty comment form class PostAdmin(admin.ModelAdmin): list_display = ('title', 'created_at', 'updated_at') search_fields = ('title',) # Adds a search bar for the title field prepopulated_fields = {'slug': ('title',)} # Automatically fills in the slug field admin.site.register(Post, PostAdmin) admin.site.register(Comment)
第 8 步:建立超級使用者
要存取管理面板,您需要建立一個超級使用者。執行以下命令:
$ python3 manage.py createsuperuser
系統將提示您輸入使用者名稱、電子郵件和密碼。輸入您所需的憑證:
Username: admin Email address: admin@gmail.com Password: ********** Password (again): *********
第 9 步:運行開發伺服器
一切就緒後,啟動開發伺服器:
$ python3 manage.py runserver
第 10 步:探索 Django 管理面板
現在,開啟瀏覽器並前往管理 URL:http://127.0.0.1:8000/admin/。您應該會看到 Django 管理員登入畫面:
使用您建立的超級使用者憑證登錄,您將被導向到管理面板:
從這裡,您可以管理您的模型,查看您的貼文和評論條目,並使用 Django 管理介面提供的強大功能。
結論
Django 的管理面板可以輕鬆管理應用程式的模型和數據,而無需從頭開始建立自訂介面。無論您是新增條目、搜尋記錄還是進行修改,管理面板對於開發人員來說都是一個強大的工具。
更多資訊請查看Django的官方文件:。
https://docs.djangoproject.com/en/5.1/ref/contrib/admin/
以上是設定與探索 Django 的管理面板的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Python适合数据科学、Web开发和自动化任务,而C 适用于系统编程、游戏开发和嵌入式系统。Python以简洁和强大的生态系统著称,C 则以高性能和底层控制能力闻名。

Python在遊戲和GUI開發中表現出色。 1)遊戲開發使用Pygame,提供繪圖、音頻等功能,適合創建2D遊戲。 2)GUI開發可選擇Tkinter或PyQt,Tkinter簡單易用,PyQt功能豐富,適合專業開發。

兩小時內可以學到Python的基礎知識。 1.學習變量和數據類型,2.掌握控制結構如if語句和循環,3.了解函數的定義和使用。這些將幫助你開始編寫簡單的Python程序。

2小時內可以學會Python的基本編程概念和技能。 1.學習變量和數據類型,2.掌握控制流(條件語句和循環),3.理解函數的定義和使用,4.通過簡單示例和代碼片段快速上手Python編程。

Python更易學且易用,C 則更強大但複雜。 1.Python語法簡潔,適合初學者,動態類型和自動內存管理使其易用,但可能導致運行時錯誤。 2.C 提供低級控制和高級特性,適合高性能應用,但學習門檻高,需手動管理內存和類型安全。

Python在web開發、數據科學、機器學習、自動化和腳本編寫等領域有廣泛應用。 1)在web開發中,Django和Flask框架簡化了開發過程。 2)數據科學和機器學習領域,NumPy、Pandas、Scikit-learn和TensorFlow庫提供了強大支持。 3)自動化和腳本編寫方面,Python適用於自動化測試和系統管理等任務。

要在有限的時間內最大化學習Python的效率,可以使用Python的datetime、time和schedule模塊。 1.datetime模塊用於記錄和規劃學習時間。 2.time模塊幫助設置學習和休息時間。 3.schedule模塊自動化安排每週學習任務。

Python在自動化、腳本編寫和任務管理中表現出色。 1)自動化:通過標準庫如os、shutil實現文件備份。 2)腳本編寫:使用psutil庫監控系統資源。 3)任務管理:利用schedule庫調度任務。 Python的易用性和豐富庫支持使其在這些領域中成為首選工具。
