1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB.(FRAMEWORK DJANGO)

37 443 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 1,94 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

FRAMEWORK DJANGO FRAMEWORK DJANGOFRAMEWORK DJANGO FRAMEWORK DJANGO XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB. XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB. XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB. XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB. Đầu tiên là việc lựa chọn website rao vặt, với tiêu chí tạo sự thoải mãi cho người sử dụng, nhóm em sẽ không lựa chọn những website như: yêu cầu xác nhận rao vặt qua điện thoại, thu phí mỗi lần rao vặt. Những website mà nhóm lựa chọn sẽ gồm có website rao vặt không cần tài khoản và cần tài khoản đăng nhập. Trong đó gồm có: tudomuaban.com, raovat113.com, canmuaban.vn, đều là những website có lượng thông tin rao vặt hàng ngày lớn. Các phần chính trong việc triển khai website: Theo vết thông tin rao vặt khi một người dùng rao vặt ở các website trên: 2 phương thức hoạt động chính của một website là: POST và GET dữ liệu đến Web – Server của website, sau đó Server sẽ xử lý và trả về dữ liệu và Brower hiển thị cho người dùng. o Sử dụng công cụ Inspect của Browers, chuyển qua mục Network và theo dõi các method POST, GET. Thao tác từng bước rao vặt trên một website và ghi chú lại những thông tin cần thiết như: Responsive Headers, Request Headers, Form Data(dữ liệu mà ta nhập). o Từ thông tin có được, đặc biệt là trong phần Form Data(cấu trúc dữ liệu gửi lên Web – Server của website) và thông tin viewsource website ở mục thông tin lựa chọn, ta biết được các dữ liệu đó tương ứng với gì(đã số dữ liệu trong Form Data là số, như category_id, location_id). Ví dụ theo vết: XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB.XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB.XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB.XÂY DỰNG WEBSITE PYTHON TỔNG HỢP RAO VẶT TỪ CÁC TRANG WEB. FRAMEWORK DJANGOFRAMEWORK DJANGOFRAMEWORK DJANGO

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG

BÁO CÁO ĐỒ ÁN XÂY DỰNG WEBSITE TỔNG HỢP RAO VẶT

GVHD: ThS Trần Thị Dung

Nhóm sinh viên:

TP.HCM, tháng 6 năm 2016

Trang 2

Lời mở đầu

Ngày nay, công nghệ thông tin nói riêng và Internet nói chung đang là một yếu tốcần thiết trong hầu hết các lĩnh vực của đời sống Các thông tin trên Internet được cậpnhật liên tục, nhanh chóng và chính xác Và website là một ứng dụng phổ biến hiện naytrên Internet Nó đang ngày phát triển mạnh mẽ và có nhiều ứng dựng thực tiễn trongcuộc sống

Người tiêu dùng Việt Nam đã xem Internet là một công cụ để tìm kiếm thông tin

về những sản phẩm, mặt hàng, những thông tin về người bán, người mua Thực tế, hiệnnay trên Internet có rất nhiều website rao vặt nhằm tạo liên kết giữa người bán và ngườimua, hỗ trợ người mua biết thêm nhiều thông tin về sản phẩm mình cần mua, rao quảngcáo và đưa các thông tin về bất động sản, phòng trọ, nhà ở … Tuy nhiên, những thông tin

về các sản phẩm mình cần bán, cần mua chỉ đến được một website mà mình đăng tin trên

đó mà thôi

Do đó nhóm em chọn đề tài “Xây dựng website tổng hợp rao vặt” nhằm giúp

cho người sử dụng có thể dễ dàng đăng tin rao vặt trên các trang rao vặt như:canmuaban.vn, raovat123.com, tudomuaban.com… với một lần đăng duy nhất mà khôngcần phải thao tác nhiều

Trang 3

Lời cảm ơn

Để hoàn thành được đề tài này nhóm chúng em chân thành cảm ơn Quý Thầy/Côtrong khoa Mạng Máy Tính và Truyền Thông đã nhiệt tình chỉ dẫn và giúp đỡ, trong đónhóm xin gửi lời cảm ơn sâu sắc đến ThS Trần Thị Dung đã nhiệt tình hướng dẫn chonhóm các bước để thực hiện đề tài, giúp nhóm giải quyết nhiều khó khăn và nảy ra nhiều

ý tưởng mới Đồng thời nhóm cũng gửi lời cảm ơn đến các anh/chị khóa trên, các bạntrong lớp đã đóng góp ý kiến để nhóm hoàn thiện bài báo cáo một cách tốt nhất

Mặc dù nhóm chúng em đã cố gắng, tuy nhiên trong một thời gian ngắn cũng nhưkiến thức còn nhiều hạn chế nên chắc chắn không thể tránh khỏi những sai sót Chúng emrất mong nhận được những sự đánh giá, góp ý của cô để hoàn thiện kiến thức của mìnhhơn

Một lần nữa, nhóm chúng em xin chân thành cảm ơn cô rất nhiều!

Tp Hồ Chí Minh, tháng 06 năm 2016

Sinh viên thực hiện

Trang 4

Nhận xét của giáo viên hướng dẫn

ĐỀ CƯƠNG ĐỒ ÁN MÔN HỌC

1 Tên đề tài :

Xây dựng Website tổng hợp rao vặt

2 Giảng viên hướng dẫn :

ThS Trần Thị Dung

3 Sinh viên thực hiện :

4 Thời gian thực hiện: 03/2016 đến 06/2016

Trang 5

5 Nội dung đề tài :

 Tìm hiểu, giới thiệu về ngôn ngữ lập trình Python

 Tìm hiểu và xây dựng giao diện bằng HTML, CSS, jQuery, Boostrap …

 Tìm hiểu và xây dựng website trên Framework Django

 Tìm hiểu về hệ quản trị cơ sở dữ liệu SQLite

6 Cấu trúc báo cáo

Chương 1: Giới thiệu đề tài Chương này trình bày về bối cảnh, mục đích và lý do

chọn đề tài

Chương 2: Cơ sở lý thuyết Chương này trình bày các lý thuyết cơ bản về python,

framwork django, sql lite

Chương 3: Phân tích thiết kế hệ thống Chương này trình bày về phân tích và thiết

kế xây dựng hệ thống của website tổng hợp rao vặt

Chương 4: Triển khai website Chương này trình bày hướng triển khai về kết quả

demo chương trình, thông tin sản phẩm, cách cài đặt và hướng dẫn sử dụng

Chương 5: Kết luận, hướng phát triển đề tài Chương này tổng kết về những kết

quả đạt được, những ưu khuyết điểm của chương trình và hướng phát triển

Trang 6

Chương 1: TỔNG QUAN ĐỀ TÀI1.1 Tên đề tài

Xây dựng website “Tổng hợp rao vặt”

1.2 Thực trạng và lý do chọn đề tài

1.2.1 Thực trạng vấn đề

Hiện nay Internet ngày càng phát triển thì hình thức mua bán trên mạng internet lạicàng trở nên phổ biến Ở Việt Nam hình thức này tiến triển khá nhanh và tập trung vàohầu hết các lĩnh vực trong cuộc sống.Vì thế rao vặt trực tuyến là một sự lựa chọn thôngminh cho các nhà kinh doanh hay một cá nhân, tổ chức nào đó

Trên hàng tỉ người đang sử dụng internet hằng ngày, phần lớn họ thường đọc cáctin rao vặt khi lướt web và đó là cơ hội lớn để các nhà kinh doanh hay cá nhân, tổ chứcnào đó có thể quảng bá, tiếp thị sản phẩm của mình đến với nhà tiêu dùng

1.2.2 Hướng giải quyết

Cũng chính vì những vấn đề trên mà nhóm đã nảy ra ý tưởng và tiến hành xây dựnglên website “Tổng hợp rao vặt” Nhằm đáp ứng mọi nhu cầu mua bán, trao đổi những sảnphẩm, mặt hàng và cả những dịch vụ cho những tổ chức, công ty, cá nhân có nhu cầu.Thông tin sẽ được truyền tải đến người sử dụng một cách nhanh chóng và hiệu quảnhất giúp người dùng dễ dàng tìm kiếm thông tin sản phẩm mình cần và giúp quảng básản phẩm đến tay người tiêu dùng một cách rộng rãi nhất có thể

Website sẽ giúp người dùng phát tán các tin rao vặt lên các website rao vặt khác vàgiúp quảng bá tin rao vặt đến tất cả mọi người ghé thăm website Tin rao vặt của ngườidùng sẽ có cơ hội rất cao để được một số lượng người dùng lớn đang sử dụng các dịch vụmua bán trực tuyến biết đến vào theo dõi

Trang 7

Chương 2 : CƠ SỞ LÝ THUYẾT2.1 Ngôn ngữ Python và SQLite

2.1.1 Ngôn ngữ Python

2.1.1.1 Python là gì?

Python là một ngôn ngữ lập trình thông dịch do Guido van Rossum tạo ra năm

1990 Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động, do vậy nótương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl Python được phát triển trong một dự

án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý.[1]

Theo đánh giá của Eric S Raymond, Python là ngôn ngữ có hình thức rất sángsủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình Cấu trúc của Python còncho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu, như nhận định củachính Guido van Rossum trong một bài phỏng vấn ông

Ban đầu, Python được phát triển để chạy trên nền Unix Nhưng rồi theo thời gian,

nó đã "bành trướng" sang mọi hệ điều hành từ MS-DOS đến Mac OS, OS/2, Windows,Linux và các hệ điều hành khác thuộc họ Unix Mặc dù sự phát triển của Python có sựđóng góp của rất nhiều cá nhân, nhưng Guido van Rossum hiện nay vẫn là tác giả chủyếu của Python Ông giữ vai trò chủ chốt trong việc quyết định hướng phát triển củaPython

Trang 8

Hình 2.0 : Python

2.1.1.2 Các phiên bản

Python 1: bao gồm các bản phát hành 1.x Giai đoạn này, kéo dài từ đầu đến cuốithập niên 1990 Từ năm 1990 đến 1995, Guido làm việc tại CWI (Centrum voorWiskunde en Informatica – Trung tâm Toán-Tin học tại Amsterdam, Hà Lan) Vì vậy, cácphiên bản Python đầu tiên đều do CWI phát hành Phiên bản cuối cùng phát hành tại CWI

là 1.2

Python 2: vào năm 2000, Guido và nhóm phát triển Python dời đến BeOpen.com

và thành lập BeOpen PythonLabs team Phiên bản Python 2.0 được phát hành tại đây Saukhi phát hành Python 2.0, Guido và các thành viên PythonLabs gia nhập DigitalCreations

Python 3, còn gọi là Python 3000 hoặc Py3K: Dòng 3.x sẽ không hoàn toàn tươngthích với dòng 2.x, tuy vậy có công cụ hỗ trợ chuyển đổi từ các phiên bản 2.x sang 3.x.Nguyên tắc chủ đạo để phát triển Python 3.x là “bỏ cách làm việc cũ nhằm hạn chế trùnglặp về mặt chức năng của Python”

2.1.1.3 Những ưu điểm của Python

Python được thiết kế để trở thành một ngôn ngữ dễ học, mã nguồn dễ đọc, bố cụctrực quan, dễ hiểu Python tăng cường sử dụng từ khóa tiếng Anh, hạn chế các kí hiệu vàcấu trúc cú pháp so với các ngôn ngữ khác

Python đã hỗ trợ cho một chế độ tương tác cho phép thử nghiệm tương tác và gỡlỗi các đoạn mã Việc thực hiện tiêu chuẩn của Python được viết trong ANSI C, và biêndịch và chạy trên hầu như tất cả các nền tảng lớn hiện đang sử dụng

Python cho phép chia chương trình thành các module để có thể sử dụng lại trongcác chương trình khác Nó cũng cung cấp sẵn một tập hợp các modules chuẩn mà lậptrình viên có thể sử dụng lại trong chương trình của họ Các module này cung cấp nhiềuchức năng hữu ích, như các hàm truy xuất tập tin, các lời gọi hệ thống, trợ giúp lập trình

Trang 9

mạng (socket) … Python có khả năng giao tiếp đến hầu hết các loại cơ sở dữ liệu, có khảnăng xử lí văn bản, tài liệu hiệu quả, và có thể làm việc tốt với các công nghệ Web khác.

GUI (Giao diện đồ họa người dùng) đơn giản và nhanh chóng Python cũng làmcho người dùng đồ họa hướng đối tượng tiêu chuẩn để các Tk GUI API gọi là Tkinter(Tkinter trong 2.x) cho phép các chương trình Python để thực hiện ảnh minh hoạ di độngvới một cái nhìn tự nhiên và cảm nhận

2.1.2 SQLite

2.1.2.1 SQLite là gì?

SQLite là phần mềm quản lý cơ sở dữ liệu (DBMS) Database ManagementSystem tương tự như MySQL, PostgreSQL Đặc điểm của SQLite là gọn, nhẹ, đơn giản.Chương trình gồm 1 file duy nhất vỏn vẹn chưa đến 500KB, không cần cài đặt, khôngcần cấu hình hay khởi động mà có thể sử dụng ngay Dữ liệu database cũng được lưu ởmột file duy nhất Không có khái niệm user, password hay quyền hạn trong SQLitedatabase SQLite vẫn có transaction để đảm bảo tính toàn vẹn và an toàn trong quá trìnhthao tác dữ liệu Có thể so sánh nó có một vài điểm giống với Access, nhưng nhìn chungvẫn có nhiều sự khác biệt [2]

SQLite không thích hợp với những hệ thống lớn nhưng ở quy mô vừa tầm thìSQLite phát huy uy lực và không hề yếu kém về mặt chức năng hay tốc độ Với các đặcđiểm trên SQLite được sử dụng nhiều trong việc phát triển, thử nghiệm v v và là sự lưachọn phù hợp cho những người bắt đầu học database

2.1.2.2 Một số ưu điểm của SQLite

SQLite có các ưu điểm sau:

- Tin cậy: các hoạt động transaction (chuyển giao) nội trong cơ sở dữ liệu được thựchiện trọn vẹn, không gây lỗi khi xảy ra sự cố phần cứng

- Tuân theo chuẩn SQL92 (chỉ có một vài đặc điểm không hỗ trợ)

- Không cần cài đặt cấu hình

- Kích thước chương trình gọn nhẹ, với cấu hình đầy đủ chỉ không đầy 500 kB

Trang 10

- Thực hiện các thao tác đơn giản nhanh hơn các hệ thống cơ sở dữ liệu khách/chủkhác.

- Không cần phần mềm phụ trợ

- Phần mềm tự do với mã nguồn mở, được chú thích rõ ràng

2.1.2.3 Một vài đặc tính của SQLite

- Zero-Configuration: Bạn hoàn toàn không phải thiết lập bất kỳ một cấu hình nào

để có thể sử dụng SQLite, tất cả những gì bạn cần là một file SQLite.exe và chạy

- Serverless: Các Hệ quản trị CSDL như SQLServer, Oracle, PostgreSQL thường

cần một server riêng để triển khai ứng dụng, cài đặt database engine, các máykhách sẽ kết nối đến server để xử lý dữ liệu một cách tập trung Tuy nhiên SQLitekhông làm việc theo cách này mà ứng dụng sẽ truy xuất trực tiếp vào filedatabase, các máy khách cũng có thể truy xuất một file database SQLite để trênmột server thông qua cơ chế chia sẻ và bảo mật file của hệ điều hành, người dùngnào truy cập được vào thư mục và có quyền đọc – ghi thì sẽ có thể đọc ghi vàofile database SQLite

- Single Database File: Database do SQLite tạo ra là một file dữ liệu duy nhất Tất

cả chỉ có thế

- Stable Cross-Platform Database File: Bạn có thể copy file database SQLite từ hệ

thống này sang hệ thống khác, từ hệ thống 32 hay 64 bit, từ phiên bản SQLite nàysang phiên bản khác mà không cần chuyển đổi, nâng cấp hệ điều hành, cấu trúc

hệ thống hay phải làm lại file database

- Compact: Cực kỳ nhỏ gọn Toàn bộ thư viện SQLite gồm một file duy nhất vỏn

vẹn chưa đến 500kB, không cần cài đặt, không cần cấu hình hay khởi động mà cóthể sử dụng ngay Nếu lược bỏ một số chức năng không cần thiết thì kích thướccủa file có thể giảm chỉ còn khoảng 300kB

- Manifest typing: Khi bạn dùng SQLite sẽ để ý là số lượng kiểu dữ liệu của nó rất

ít, điều này là một đặc trưng của nó, bởi trong SQLite, kiểu dữ liệu là một thuộctính của chính giá trị được lưu chứ không phải là thuộc tính của cột lưu giá trị đó.Tuy vậy, cũng có một vài ràng buộc, là với cột khóa chính kiểu integer thì phảilưu giá trị phải chính xác là kiểu int, ngoài ra SQLite cũng cố gắng chuyển đổi

Trang 11

kiểu của giá trị sang kiểu của cột lưu nó khi có thể Mục đích của việc thiết kếkiểu dữ liệu như vậy nhằm làm cho nó tin cậy và đơn giản hóa việc sử dụng, vàcũng để dễ tương thích hơn khi sử dụng với các ngôn ngữ như Tcl hoặc Python

- Variable-length records: Dữ liệu lưu bao nhiêu thì hệ thống cấp phát cho bấy

nhiêu không gian bộ nhớ cho từng dòng dữ liệu, không cấp phát thừa hoặc thiếukhông gian lưu trữ cho dữ liệu, nhờ đó mà file database trở nên nhỏ gọn và tốc độ

xử lý dữ liệu cũng nhanh hơn [3]

2.2 Ngôn ngữ HTML

2.2.1 Cấu trúc chung của một trang HTML

HTML là chữ viết tắt của HyperText Markup Language, có nghĩa là ngôn ngữđánh dấu siêu văn bản Nó dùng để định dạng bố cục, các thuộc tính liên quan đến cáchhiển thị của một đoạn text và được hiển thị trên một chương trình đặc biệc ta gọi làBrowser Hiện nay có khá nhiều Browser như Firefox, Chrome, Cốc Cốc, .Tất cảBrowser đều có điểm chung là giúp người dùng thao tác với website và nó đều có khảnăng biên dịch những đoạn mã HTML, CSS và Javascript [4]

Thông thường bố cục HTML của một website có dạng như sau:

Hình 2.1 : Bố cục HTML cơ bản của một website

Trong đó:

Trang 12

- <!DOCTYPE html> là phần khai báo kiểu dữ liệu hiển thị là html để trình

duyệt (Browser) biết

- <html> và </html> là cặp thẻ nằm ngoài cùng và nó có nhiệm vụ là bao hết nội

dung của trang web lại Thẻ này là bắt buộc

- <head> và </head> là phần khai báo thông tin của trang web

- <title> và </title> nằm bên trong thẻ <head> và đây chính là khai báo tiêu đề

cho trang web

- <body> và </body> là thành phần quan trọng nhất, nó chứa nhưng đoạn mã

HTML dùng để hiển thị trên website

- Các thẻ còn lại nằm trong thẻ <body> chính là các thẻ định dạng dữ liệu.

Như vậy một website chúng ta chia thành 2 phần chính :

- Phần 1: Là những khai báo thông tin cho trang web và ta đặt nó trong thẻ head.

- Phần 2: Là phần hiển thị định dạng nội dung của trang web và ta đặt trong thẻ

Trang 14

Hình 2.7 : Ví dụ về thẻ định dạng List

2.2.3 CSS

CSS là chữ viết tắt của cụm từ tiếng Anh "Cascading Style Sheet", nó là một ngônngữ được sử dụng để tìm và định dạng lại các phần tử được tạo ra bởi các ngôn ngữ đánhdấu (ví dụ như HTML) Có thể hiểu đơn giản rằng, nếu HTML đóng vai trò định dạngcác phần tử trên website như việc tạo ra các đoạn văn bản, các tiêu đề, bảng,…thì CSS sẽgiúp chúng ta có thể thêm một chút “phong cách” vào các phần tử HTML đó như đổi màusắc trang, đổi màu chữ, thay đổi cấu trúc,…rất nhiều [5]

Có một ví dụ trực quan để diễn tả nhiệm vụ của CSS như sau, giả sử bạn xây nhà

và bạn sẽ sử dụng gạch để xây dựng ngôi nhà Nhưng để trang trí cho ngôi nhà thì bạn sẽ

sử dụng một số đồ nội thất khác như sơn màu, thì lúc này sơn màu sẽ tác động làmthay đổi color mặc định của gạch Nói ví von thì màu sơn chính là CSS và gạch chính làHTML

CSS đóng một vai trò rất quan trọng khi bạn xây dựng giao diện website Thôngthường bạn sẽ sử dụng một chương trình thiết kế như Photoshop để tạo giao diện, sau đócác Frontend Developer sẽ dựa vào file đó kết hợp với HTML & CSS để convert thànhmột file có đuôi mở rộng là html, file này sẽ chứa code HTML và CSS

CSS có nhiều kiểu nhưng gom lại thì chúng ta sẽ có các thể loại CSS thông dụngnhư sau:

- Background: CSS tùy chỉnh hình nền

- Text: CSS tùy chỉnh cách hiển thị đoạn text

- Font: CSS tùy chỉnh kích thước, kiểu chữ

- Link: CSS tùy chỉnh link

- List: CSS tùy chỉnh danh sách

- Table: CSS tùy chỉnh bảng

- Box model: Mô hình box model kết hợp padding, margin, border

-

2.3 Framework Django

Trang 15

2.3.1 Giới thiệu

Django là một web framework miễn phí mã nguồn mở được viết bằng Python.Django sử dụng mô hình Model-View-Control (MVC), được phát triển bởi DjangoSoftware Foundation(DSF) – một tổ chức phi lợi nhuận độc lập Nó không phải là mộtmicro-framework như Flask, mà là một framework với đầy đủ các thư viện, module hỗtrợ các web-developer [6]

Django được đưa vào sử dụng rộng rãi từ năm 2005, ban đầu là một frameworkhướng đối tượng cho một website của tờ báo ở Kansas Ngay lập tức framework nàyđược phổ biến và phát triển rất mạnh Django rất thích hợp để xây dựng nên các trangweb lớn Đó là lí do tại sao Django đang dần được phổ biến nhằm triển khai các dự ánmột cách nhanh chóng với những quy mô lớn

Hình 2.8 : Framework Django

2.3.2 Một số ưu điểm của Framework Django

- Django được thiết kế với triết lý làm sao để các lập trình viên đưa các ý tưởng trở

thành một sản phẩm nhanh nhất có thể

- Có đầy đủ các thư viện/module cần thiết: Django có sẵn các thư viện về user

authentication, content admin, site maps, RSS feed,

Trang 16

- Đảm bảo về tính bảo mật: Không còn các nỗi lo về các lỗi bảo mật thông thường

như SQL Injection, cross-site scripting, cross-site request forgery hay clickjackingnữa Django cũng cung cấp cả phương pháp để lưu mật khẩu an toàn nữa

- Khả năng mở rộng tốt: Django có thể đáp ứng lượng traffic lớn, nghĩa là bạn

không cần phải lo lắng về khả năng scale sản phẩm của mình nữa

- Tính linh hoạt: Xây dựng CMS, hoặc Ecommerce Website, hay kể cả Social

Network, Scientific Computing Platforms, tất cả đều có thể với Django

2.3.3 Cấu trúc của một Django project

Để tạo một project Django thì bạn mở Command Prompt (cmd) lên và chuyển đếnthư mục mà bạn muốn tạo, sau đó gõ đoạn lệnh phía trên, ở trên chúng ta tạo một project

với tên là doan Khi đặt tên project bạn tránh đặt những tên trùng với các từ khóa có sẵn

trong Python như sys, os, django… để tránh bị xung đột

Hình 2.9 : Tạo project Django

Lệnh startproject sẽ tạo một thư mục có tên là doan, cấu trúc bên trong thư mục sẽnhư thế này:

Hình 2.10 : Cấu trúc của một Django Project

Trong đó:

doan/: ngoài cùng là root directory chứa project.

Trang 17

manage.py: đây là 1 command-line utility cho phép mình thao tác với theo nhiều

cách với project hiện hành của mình

doan/: bên trong là gói các package Python mình sẽ sử dụng cho project

doan/ init .py: là 1 file rỗng chỉ định việc cái đường dẫn này sẽ được xem như

là 1 Python package

doan/settings.py: Settings/configuration cho project Django

doan/urls.py: khai báo URL cho project

doan/wsgi.py: entry-point cho tích hợp web server WSGI

Trang 18

Chương 3 : PHÂN TÍCH THIẾT KẾ HỆ THỐNG

- Quản lý liên hệ: Xem, chỉnh sửa, xử lý thông tin liên hệ - phản hồi

- Quản lý tin rao vặt: Thêm, xóa, sửa dữ liệu rao vặt

- Quản trị hệ thống: Thêm, xóa, sửa quản trị viên website

3.2.1 Quản trị hệ thống

- Khi quản trị viên muốn thêm người quản lý website quản trị viên sẽ thêm adminvào trong dữ liệu

3.2.2 Quản lý tin rao vặt

- Đăng nhập vào hệ thống quản trị

- Vào danh mục các tin đã đăng -> tiến hành thêm, sửa, xóa dữ liệu rao vặt

3.2.3 Quản lý liên hệ

- Khi người sử dụng gửi yêu cầu hỗ trợ vấn đề nào đó thì quản trị viên sẽ quản lý

thông tin liên hệ của khách hàng

- Quản trị viên sẽ xem và xử lý yêu cầu của khách hàng.

- Sau khi xử lý xong yêu cầu liên hệ của người sử dụng, quản trị viên sẽ xóa thông

tin liên hệ đó đi

3.3 Sơ đồ phân rã chức năng.

Ngày đăng: 17/03/2019, 23:37

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w