Hướng dẫn xây dựng ứng dụng web Django với PyCharm chi tiết

Chuẩn bị môi trường

Các công cụ cần thiết:
  • Python 3.7+
  • PyCharm IDE (Community hoặc Professional)

Tạo dự án Django

Trong PyCharm:
  1. Mở Terminal
  2. Cài đặt framework:
    pip install django
  3. Tạo dự án:
    django-admin startproject app_core
    cd app_core
  4. Khởi động server thử nghiệm:
    python manage.py runserver
Truy cập http://127.0.0.1:8000/ để kiểm tra giao diện chào mừng.

Quy trình xử lý yêu cầu

Khi trình duyệt truy cập URL:
  1. Yêu cầu đến server Django
  2. Router (urls.py) khớp đường dẫn
  3. Chạy hàm view xử lý
  4. Trả về phản hồi HTTP

Cấu hình router cơ bản

Thêm route vào app_core/urls.py:
from django.http import HttpResponse

def home_view(request):
    return HttpResponse("Chào mừng đến với Django")

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', home_view),  # Route chính
]

Tạo module ứng dụng

Tạo ứng dụng book:
python manage.py startapp app_core

Đăng ký ứng dụng

Thêm vào settings.py:
INSTALLED_APPS = [
    # ... các ứng dụng mặc định
    'app_core',  # Ứng dụng mới
]

Cấu hình router phân vùng

Trong app_core/urls.py:
from django.urls import path
from .views import home_view

urlpatterns = [
    path('', home_view),
]
Và cập nhật router tổng:
urlpatterns = [
    path('admin/', admin.site.urls),
    path('app/', include('app_core.urls')),  # Gọi router ứng dụng
]

Cấu hình template

1. Tạo thư mục templates ở root project 2. Cập nhật settings.py:
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / 'templates'],
        ...
    },
]

Quản lý tài nguyên tĩnh

1. Tạo thư mục static để lưu tài nguyên 2. Cấu hình trong settings.py:
STATIC_URL = '/static/'
STATICFILES_DIRS = [BASE_DIR / 'static']

Tạo template mẫu

Tạo file templates/app_core/search.html:
<!DOCTYPE html>
<html lang="vi">
<head>
    <meta charset="UTF-8">
    <title>Danh sách sách</title>
    <link rel="stylesheet" href="/static/css/style.css">
</head>
<body>
    <table>
        <tr><th>Mã</th><th>Tên sách</th><th>Tác giả</th></tr>
        <tr><td>B001</td><td>Lập trình Python</td><td>Nguyễn Văn A</td></tr>
        <tr><td>B002</td><td>Django Web</td><td>Trần Thị B</td></tr>
    </table>
</body>
</html>

Áp dụng CSS

File static/css/style.css:
table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}

table th, table td {
    border: 1px solid #333;
    padding: 8px;
    text-align: left;
}

View xử lý template

Trong app_core/views.py:
from django.shortcuts import render

def show_books(request):
    return render(request, 'app_core/search.html')

Cấu hình URL cho view

Trong app_core/urls.py:
from django.urls import path
from .views import show_books

urlpatterns = [
    path('books/', show_books),
]

Thẻ: Django pycharm web-development templates static-files

Đăng vào ngày 17 tháng 7 lúc 14:03