DANH SÁCH THÀNH VIÊN NHÓM 2BẢNG PHÂN CÔNG T^m hi_u FrameWork Django, xây dựng giao diện b i hát, album b i hátT^m hi_u FrameWork Django, xây dựng chức năng đăng cập nhật nhạcuploadT^m hi
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO CUỐI KỲ MÔN HỌC: NHẬP MÔN LẬP TRÌNH PYTHON CHO PHÂN TÍCH
Đ) TÀI : XÂY D+NG WEB TRÌNH PHÁT NHẠC
HỌC KỲ 2 – NĂM HỌC 2021 – 2022
MÃ MÔN HỌC: 212IPPA233277 Giảng viên hướng dẫn: Th.S Nguy n Văn Th nh NHÓM SINH VIÊN TH+C HIỆN:
Huỳnh Công QuyềnNguy n Thanh Sang
Lê Anh Kiệt
Võ Văn Nghĩa
Thành phố Hồ Chí Minh, Tháng 5 năm 202
Trang 2MỤC LỤC
PHẦN 1: MỞ ĐẦU 7
1.1 Lý do chọn đề t i 7
1.2.Mục tiêu của đề t i 8
1.3.Phương pháp nghiên cứu của đề t i 8
PHẦN 2 : NỘI DUNG 8
2.1 Giới thiệu về framework 8
C i đặt Django trên Windows 10
C i đặt Django trên Linux, Mac 10
2.2 Giao diện v chức năng 12
2.2.1 Giao diênNchOnh của Web 12
2.2.2 Trending Songs 13
2.2.3 All Songs 14
2.2.4 Album 16
2.2.5.Search 16
2.2.6.Login 17
2.2.7.Personal List 19
PHẦN 3: KẾT LUẬN 22
1 Những điều đạt được 22
2 Hướng cải tiến đề t i 22
PHẦN 4: TÀI LIỆU THAM KHẢO 23
Trang 3PHỤ LỤC HÌNH ẢNH
H^nh 1 Mô h^nh MVT của Django 9
H^nh 2 Giao diênNchOnh của Web 12
H^nh 3 Trending Songs trên Web 13
H^nh 4 Hi_n th` tat cả b i hát trên Web 14
H^nh 5 Giao diênNkhi nghe b i hát 14
H^nh 6 Hi_n t` những Album trên Web 15
H^nh 7 Hi_n th` kết quả khi Search b i hát 16
H^nh 8 Giao diênNđăng nhâpNcho User 17
H^nh 9 Giao diênNđăng kO cho User 17
H^nh 10 Giao diênNkhi user đăng nhâpNth nh công 18
H^nh 11 Giao diênNkhi thêm b i hát danh sách cá nhân 19
H^nh 12 Giao diênNhi_n th` danh sách b i hát cá nhân 20
H^nh 13 Giao diênNhi_n th` l`ch sd những b i hát đe nghe 20
Trang 4DANH SÁCH THÀNH VIÊN NHÓM 2
BẢNG PHÂN CÔNG
T^m hi_u FrameWork Django, xây dựng giao diện b i hát,
album b i hátT^m hi_u FrameWork Django, xây dựng chức năng đăng
cập nhật nhạc(upload)T^m hi_u FrameWork Django, xậy dựng chức năng t^m
hướng nhạc (trending songs)
T^m hi_u FrameWork Django, chức năng thêm b i nhạc
nghe nhạc,tạo cơ sở dữ liệu,quản lO admin
- Đánh giá kết quả: Các th nh viên ho n th nh các nhiệm vụ đúng thời hạn,ho
n th nh nhiệm vụ tốt.Mặc dù có chút khó khăn trong quá tr^nh t^m hi_u các kiến thức mới nhưng được sự hỗ trợ từ các bạn trong nhóm,cùng lớp đe ho n th nh đề t i đúng thời hạn
Trang 5NHẬN XÉT CỦA GIẢNG VIÊN
………
………
………
………
● Nội dung: ………
………
………
………
………
………
………
● Đi_m: ……
GIẢNG VIÊN
ThS NGUYỄN VĂN THÀNH
Trang 6Lời nói đầu
Lời đầu tiên, chúng em xin trân trọng cảm ơn v b y tỏ lòng biết ơn sâu sắc
nhat tới thầy Nguyễn Văn Thành – Giảng viên khoa Công Nghệ thông Tin
Trường Đại Học Sư Phạm Kỹ Thuật TPHCM, giáo viên hướng dẫn l m đề t i n y
đe nhiệt t^nh hướng dẫn v chỉ bảo chúng em
Chúng em xin trân th nh cảm ơn các thầy cô giáo đang giảng dạy tại khoaCông Nghệ thông Tin Trường Đại Học Sư Phạm Kỹ Thuật TPHCM đe nhiệt t^nhủng hộ, cung cap t i liệu v đưa ra những ý kiến đóng góp quý báu đ_ nhóm em
Trang 7PHẦN 1: MỞ ĐẦU
1.1 Lý do chọn đề tài
Thời đại 4.0 hiện nay, Công nghệ thông tin l một trong những ng nh h ngđầu, có nhiều bước phát tri_n nhanh chóng về ứng dụng của nó trong mọi lĩnhvực Nó l một phần không th_ thiếu của cuộc sống văn minh, góp phần đẩymạnh công cuộc công nghiệp hóa hiện đại hóa đat nước Thông qua máy vi tOnhcùng với những phần mềm hỗ trợ đe giúp chúng ta quản lý , tổ chức, sắp xếp v
xd lý công việc một cách nhanh chóng v hiệu quả
Theo thống kê hiện nay, ta thay hơn 24.3 triệu người đang sd dung Internettrên to n thế giới Trong đó, Việt Nam l một nước có tỷ lệ sd dụng đứng thứ 20trên thế giới sd dụng mạng đ_ truy cập thông tin Âm nhạc online l một trongnhững loại thông tin được t^m kiếm nhiều nhat chiếm 76% Nắm bắt được nhữngthông tin đó , nhóm chúng em đe cùng nhau xây dựng một tr^nh nghe nhạc trựctuyến trên web với mục đOch đem lại cho những người yêu âm nhạc có nhữngtrải nghiệm mới, đưa đến những sản phẩm âm nhạc hay v phù hợp với mọi đốitượng khách h ng
Với những yếu tố thuận lợi cả trong lẫn ngo i, cùng với tiềm năng pháttri_n âm nhạc ở Việt Nam , chúng em tin đây l một đề t i có tiềm năng phát tri_n.Đ_ học hỏi v hi_u rõ hơn về Python cũng như các ngôn ngữ khác, chúng em hyvọng đây l một đề t i phù hợp vừa nâng cao kiến thức vừa đem đến một sảnphẩm mang giúp mọi người nghe nhạc thư giản sau những giờ l m mệt mỏi
1.2.Mục tiêu của đề tài
Xây dựng Website Tr^nh Phát Nhạc
Nghiên cứu, học học các Framework : Django,…
Vận dụng kiến thức ngôn ngữ Python
Trang 81.3.Phương pháp nghiên cứu của đề tài
T^m hi_u v ứng dụng ngôn ngữ Python
Sd dụng cơ sở dữ liệu đ_ lưu trữ v trOch xuat
T^m hi_u các công nghệ hỗ trợ:Django Framework, Html, Http, CSS
Trang 9PHẦN 2 : NỘI DUNG
2.1 Giới thiệu về framework
Web tr^nh phát nhạc được viết dựa trên Django - framework hỗ trợ Python trong lâpNtr^nh web
- Django l một framework bậc cao của Python có th_ thúc đẩy việc phát tri_n
phần mềm thần tốc v clean, thiết kế thực dụng Được xây dựng bởi nhiều lập tr^nhviên kinh nghiệm, Django tập trung lớn những van đề phát tri_n Web, bạn có th_ pháttri_n trang web của bạn m không cần xây dựng từ những căn bản
- Những lợi thế của Django:
● Hoàn thiện: Django phát tri_n theo tư tưởng "Batteries included" (có th_
hi_u ý nghĩa l tOch hợp to n bộ, chỉ cần gọi ra m dùng) Nó cung cap mọi thứ chodeveloper không cần phải nghĩ phải dùng cái ngo i Chúng ta chỉ cần tập trung v o sảnphẩm, tat cả đều hoạt động liền mạch với nhau
● Đa năng: Django có th_ được dùng đ_ xây dựng hầu hết các loại website, từ
hệ thống quản lý nội dung, cho đến các trang mạng xe hội hay web tin tức Nó có th_ l
m việc với framework client-side, v chuy_n nội dung hầu hết các loại format
(HTML, RESS, JSON, XML, )
● Bảo mật: Django giúp các developer coi trọng các lỗi bảo mật thông thường
bằng cách cung cap framework rằng có những kĩ thuật "phải l m như vậy" đ_ bảo vệwebsite VO dụ: Django cung cap bảo mật quản lý tên t i khoản v mật khẩu, tránh cáclỗi cơ bản như đ_ thông tin session lên cookie, me hóa mật khẩu thay v^ lưu thẳng
(mỗi phần của kiến trúc sẽ độc lập với nhau, v có th_ thay thế hoặc sdađổi nếu cần thiết) Có sự chia tách rõ r ng giữa các phần nghĩa l nó có th_scale cho việc gia tăng traffic bằng cách thêm phần cứng ở mỗi cap độ:caching, servers, database servers, hoặc
Trang 10application servers Nhiều web về kinh doanh đe th nh công khi Django được scale đáp ứng yêu cầu của họ
● Dễ maintain: code Django được viết theo nguyên tắc thiết kế v pattern có
th_ khuyến khOch ý tưởng bảo tr^ v tái sd dụng code Trên thực tế, nó sự theo kháiniệm Don't Repeat Yourself l m cho không có sự lặp lại không cần thiết, giảm mộtlượng code
● Tính linh động: Django được viết bằng Python, nó có th_ chạy đa nền tảng Nó có nghĩa rằng bạn không r ng buộc một platform server cụ th_ Django
được hỗ trợ tốt ở nhiều nh cung cap hosting, họ sẽ cung cap hạ tầng v t i liệu cụ th_cho hosting web Django
Hwnh 1 Mô hwnh MVT của Django
- Cài đătyDjango
Ta sẽ c i đặt Django bằng tr^nh lệnh pip của Python
C i đặt Django trên Windows
● Nhan tổ hợp phOm Window + R,
● Gõ cmd nhan enter đ_ mở một cda sổ terminal, sau đó gõ: pip install django
C i đặt Django trên Linux, Mac
● Tổ hợp phOm Ctrl + Alt + T để mở Terminal
Trang 11● Gõ:
sudo apt-get install python3-django
Mô h^nh trong kiến trúc MVT của Django xác đ`nh cau trúc v h nh vi của
dữ liệu bạn muốn lưu trữ thông qua trang web của m^nh Mỗi mô h^nh Djangobạn tạo sẽ tạo ra một bảng cơ sở dữ liệu tương ứng, trong đó mỗi thuộc tOnh của
mô h^nh sẽ trở th nh một trường trong bảng
Cau trúc tệp dự án Django mẫu hiện có
Những file trong n y đều có 1 chức năng riêng v cụ th_ nó sẽ như sau:
như l 1 Python package
Trang 12● settings.py l file chứa các settings của project Trong file n y chứa các setting cơ bản như DEBUG, ALLOWED_HOSTS, INSTALLED_APP,
DATABASES,
th^ sẽ thực thi h m n o)
2.2 Giao diện và chức năng
2.2.1 Giao diêny chính của Web
Trên m n h^nh giao diện gồm các chức năng như sau
Trang 13Hwnh 2 Giao diên ychính của Web 2.2.2 Trending Songs
Thông qua việc phân tOch dữ liệu v ki_m tra dữ liệu truy cập.Những b i hátTrending sẽ được hi_n th` trên giao diênNchOnh l những b i hát có số lượng
Trang 15Hwnh 4 Hiển th€ t•t cả bài hát trên Web
nghe được b i hát m^nh chọn
Hwnh 5 Giao diên ykhi nghe bài hát
Trên m n h^nh lúc n y hi_n th` b i hát được chọn.Thông tin b i hát gồm tên
ca sĩ/nhóm nhạc , link MV v bản dowload
Nếu muốn thêm b i hát v o danh sách cá nhân th^ cần phải đăng nhâpN
Trang 162.2.4 Album
Hwnh 6 Hiển t€ những Album trên Web 2.2.5 Search
muốn, giúp người dùng đỡ tốn thao tác t^m kiếm b i hát muốn nghe
h^nh bên dưới
Trang 17Hwnh 7 Hiển th€ kết quả khi Search bài hát
H^nh ảnh trên l vO dụ cho đang t^m kiếm b i hát có tên l Nevada
Trang 182.2.6 Login, SignUp
Ngo i ra Web còn thiết kế chức năng Login cho người dùng:
Hwnh 8 Giao diên yđăng nhâpy cho User
phần đăng nhập đ_ tạo t i khoản
Trang 19Hwnh 9 Giao diên yđăng kí cho User
Trang 20Hwnh 10 Giao diênykhi user đăng nhâpy thành công
Khi đe đăng nhâpNth^ Web cũng có những chức năng tương tự như khiuser chưa đăng nhâpNl xem được tat cả các b i hát hay l những Album b i háttheo th_ loại, t^m kiếm b i hát theo tên b i hát Ngo i ra, sau khi đăng nhập th^ cóthêm chức năng Personal List, History
2.2.7 Personal List
thêm.Tại giao diện phát nhạc ta chọn Add to PersonalList
bên dưới
Trang 21Hwnh 11 Giao diên ykhi thêm bài hát danh sách cá nhân
Lưu ý: Đ_ thêm nhạc v o danh sách cá nhân , người dùng cần phải đăng nhập
Trang 22Đ_ xem lại các b i hát m^nh đe chọn người dùng chỉ cần nhat v o
PersonalList trên header Sau khi nhan th^ sẽ thay danh sách nhạc của m^nh như
Hwnh 12 Giao diên yhiển th€ danh sách bài hát cá nhân
Ngo i ra còn có th_ xem lại l`ch sd những b i m^nh đe nghe bằng cách nhan v o History trên Header (chỉ khi đăng nhập người dùng mới xem được)
Trang 23Hwnh 13 Giao diên yhiển th€ l€ch s‡ những bài hát đã nghe
PHẦN 3: KẾT LUẬN
1 Những điều đạt được
bootdey, codepen tiết kiệm thời gian code
2 Hướng cải tiến đề tài
Trang 24PHẦN 4: TÀI LIỆU THAM KHẢO
1. lap-trinh-web-QpmlexbkZrd
https://viblo.asia/p/tim-hieu-ve-django-framework-ho-tro-python-trong-2. python-django-1515
https://howkteam.vn/course/gioi-thieu-ve-python-django/gioi-thieu-ve-3. https://getbootstrap.com/
4. player-using-django/?
https://www.section.io/engineering-education/how-to-build-a-music-fbclid=IwAR0qbamXPH3WDgSzZCxrkK4G3MEnMQKHJa0QTluu
oplOcPiaXDvYDeDRTZc