Use django to write api for features in the mini supermarket management system

56 6 0
Use django to write api for features in the mini supermarket management system

Đ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

TRƯỜNG ĐẠI HỌC KINH TẾ KHOA THỐNG KÊ – TIN HỌC BÁO CÁO THỰC TẬP NGHỀ NGHIỆP NGÀNH HỆ THỐNG THÔNG TIN QUẢN LÝ CHUYÊN NGÀNH QUẢN TRỊ HỆ THỐNG THÔNG TIN USE DJANGO TO WRITE API FOR FEATURES IN THE MINI SUPERMARKET MANAGEMENT SYSTEM Đơn vị thực tập : CÔNG TY TNHH TIN HỌC VÀ THƯƠNG MẠI (ASNET) Giảng viên hướng dẫn : Ths Nguyễn Văn Chức LỜI CẢM ƠN Sau thời gian học tập trường, em truyền đạt kiến thức chuyên ngành, lời khuyên học tập, công việc định hướng tương lai Và đặc biệt hơn, em tham gia thực tập nghề nghiệp kiến thức lý thuyết học Dưới quan tâm, dẫn quý thầy cô khoa Thống kê - Tin học em bắt đầu q trình thực tập Cơng ty TNHH Tin Học Thương Mại (AsNet) Khoảng thời gian thực tập ngắn em học hỏi, trải nghiệm tích lũy kỹ cần thiết cho vị trí lập trình viên Python Back-End Xin chân thành cảm ơn quý thầy, cô giáo khoa Thống Kê – Tin học trường Đại học Kinh Tế, Đại học Đà Nẵng tạo điều kiện để em có tập thành cơng Đặc biệt, em xin cảm ơn thầy Nguyễn Văn Chức, người tận tình hướng dẫn chúng hồn thành báo cáo Em xin cảm ơn ban lãnh đạo công ty TNHH Tin học Thương mại (AsNet), đặc biệt anh Ngơ Chí Trung Phạm Trần Hữu Thọ tiếp nhận tạo điều kiện tốt cho em có tập bổ ích công ty Em xin gửi lời cảm ơn chân thành đến anh Nguyễn Hữu Thông người hướng dẫn em công ty giúp đỡ, tận tình bảo cung cấp tài liệu cho em q trình thực tập vị trí để hồn thành tập tốt Vì thực tập thực phạm vi thời gian hạn hẹp hạn chế mặt kiến thức chun mơn, báo cáo em khơng thể tránh khỏi sai sót định Em mong có ý kiến đóng góp thầy, cô để báo cáo thân chúng em hoàn thiện LỜI CAM ĐOAN Em xin cam đoan: - Đề tài: “Use Django to write API for features in the mini supermarket management system” công trình nghiên cứu lấy ý tưởng từ dự án làm việc nhóm em trường - Dự án em hoàn thiện hướng dẫn cán bộ, nhân viên Công ty TNHH Tin học Thương mại (AsNet) thầy Th.S Nguyễn Văn Chức - Khơng có chép người khác - Đề tài, nội dung báo cáo thực tập sản phẩm mà em nỗ lực nghiên cứu trình học tập trường tham gia thực tập công ty - Em xin chịu hình thức kỷ luật cam đoan sai thật MỤC LỤC LỜI CẢM ƠN ii LỜI CAM ĐOAN iv MỤC LỤC v DANH MỤC BẢNG BIỂU x DANH MỤC CÁC TỪ VIẾT TẮT xi LỜI MỞ ĐẦU 1 Mục tiêu nhiệm vụ đề tài Phương pháp nghiên cứu Đối tượng phạm vi nghiên cứu 3.1 Đối tượng nghiên cứu 3.2 Phạm vi nghiên cứu Kết cấu đề tài Kết dự kiến CHƯƠNG GIỚI THIỆU VỀ CÔNG TY TNHH TIN HỌC VÀ THƯƠNG MẠI (ASNET) VÀ VỊ TRÍ BACK-END 1.1 Giới thiệu tổng quát doanh nghiệp thực tập 1.2 Tổng quan vị trí việc làm 1.2.1 Nhà phát triển web (Web developer) 1.2.2 Giới thiệu Back-End 1.2.3 Kỹ cần có Back-End CHƯƠNG CƠ SỞ LÝ THUYẾT 2.1 Ngôn ngữ Python 2.1.1 Giới thiệu Python 2.1.2 Python sử dụng 2.1.3 Frameworks Python 10 2.2 Django 12 2.2.1 Giới thiệu Django 12 2.2.2 Cách Django hoạt động 13 2.2.3 Khả điều chỉnh quy mô Django 14 2.3 API 15 2.3.1 Giới thiệu API 15 2.3.2 Cách hoạt động API 15 2.3.3 Tài liệu mô tả API (API Documentation) 15 2.4 Postman 16 2.4.1 Giới thiệu Postman 16 2.4.2 Các chức Postman 17 CHƯƠNG TRIỂN KHAI DỰ ÁN 19 3.1 Xác định yêu cầu dự án 19 3.2 Thiết kế mơ hình erd sở liệu 20 3.2.1 Cơng cụ thiết kế mơ hình erd sở liệu 20 3.2.2 Mục tiêu mơ hình erd 21 3.3 Thư viện quản lý 24 3.3.1 Vai trò thư viện quản lý dự án 24 3.3.2 Tạo kho lưu trữ (Repository) 24 3.4 Cài đặt công cụ hỗ trợ 24 CHƯƠNG PHÁT TRIỂN DỰ ÁN 25 4.1 Chọn tính thực 25 4.2 Lập kế hoạch chi tiết 27 4.3 Lập trình cho dự án 28 4.3.1 Quy trình thực viết API 28 4.3.2 Xây dựng models 29 4.3.3 Xây dựng views 32 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 41 TÀI LIỆU THAM KHẢO 43 CHECK LIST CỦA BÁO CÁO 44 PHỤ LỤC 45 DANH MỤC HÌNH ẢNH Hình Logo Cơng Ty TNHH Tin Học Thương Mại (AsNet) Hình Ngôn ngữ Python Hình Django 12 Hình Giao diện Postman 17 Hình Công cụ thiết kế Diagram Draw.io 21 Hình Mơ hình erd 22 Hình Mơ hình sở liệu 23 Hình Model Account 31 Hình Model Role 32 Hình 10 Model Permission 33 Hình 11 Thiết lập thông báo 34 Hình 12.View tạo vai trò 34 Hình 13 View chỉnh sửa vai trị 35 Hình 14 View xóa vai trị 36 Hình 15 Urls tạo vai trò 36 Hình 16 Urls chỉnh sửa vai trị 36 Hình 17 Urls xóa vai trò 37 Hình 18 Tạo vai trò 37 Hình 19 Tạo vai trị thành cơng 38 Hình 20 Lỗi tạo vai trò 38 Hình 21 Lỗi tạo vai trị 39 Hình 22 Cập nhật vai trị thành cơng 39 Hình 23 Lỗi chỉnh sửa vai trò 40 Hình 24 Lỗi chỉnh sửa vai trị 40 Hình 25 Xóa vai trị thành cơng 41 Hình 26 Lỗi xóa vai trị 42 DANH MỤC BẢNG BIỂU Số hiệu Tên bảng Trang Bảng Bảng kế hoạch chi tiết để thực tính chọn 29 DANH MỤC CÁC TỪ VIẾT TẮT STT Từ viết tắt Từ đầy đủ API Application programming interface HTTP HyperText Transfer Protocol ERD Entity Relationship Diagram ID Identification ML Machine Learning AI Artificial Intelligence HTML Hypertext Markup Language CSS Cascading Style Sheets SQL Structured Query Language 10 PC Personal Computer 11 CI/CD Continuous Integration/Continuous Deployment 12 REST Representational State Transfer 13 XML Extensible Markup Language 14 JSON JavaScript Object Notation Model Role Hình Model Role 31 Model Permission Hình 10 Model Permission 4.3.3 Xây dựng views Trong dự án views phần xử lý logic cho chức Tạo số cho thông điệp cần trả về, sử dụng lại Hình 11 Thiết lập thơng báo 32 - Chức tạo vai trị (add_role) Hình 12 View tạo vai trò + Chức năng tạo phương thức POST + Dữ liệu truyền vào dạng Json + Sau xử lý trả thông báo kèm trạng thái cho trường hợp - Chức chỉnh sửa vai trò (update_role) Hình 13 View chỉnh sửa vai trò 33 + Chức update sử dụng phương thức PUT + Dữ liệu update truyền dạng Json + Sau xử lý trả thông báo kèm trạng thái cho trường hợp - Chức xóa vai trị (delete_role) Hình 14 View xóa vai trị + Chức xóa sử dụng phương thức DELETE + Sau xóa trả thông báo cho trường hợp 4.3.4 Cấu hình đường dẫn (URLs) Sau tạo views, cần tạo đường dẫn để ứng dụng truy cập đến view - Cấu hình urls cho chức tạo vai trò Hình 15 Urls tạo vai trị 34 - Cấu hình urls cho chức chỉnh sửa vai trò Hình 16 Urls chỉnh sửa vai trị - Cấu hình urls cho chức xóa vai trị Hình 17 Urls xóa vai trị 4.3.5 Kiểm thử hoạt động API Postman a) Kiểm tra hoạt động chức tạo vai trò Hình 18 Tạo vai trò + Chúng ta chọn phương thức POST cho việc tạo + Điền đường dẫn để Postman truy cập để kiểm thử + Tại phần body sử dụng liệu dạng Json để truyền vào, tạo vai trò thủ kho (Stocker) 35 Hình 19 Tạo vai trị thành cơng + Sau tạo thành công, Postman trả thông báo tạo thành công, thông báo cần phải cấu hình trước + Trạng thái trả 200 tức thành công, không xảy lỗi Hình 20 Lỗi tạo vai trị + Nếu khơng điền tên vai trị cần tạo Postman báo lỗi + Trạng thái trả 400 tức có lỗi xảy 36 Hình 21 Lỗi tạo vai trị + Nếu nhập tên trùng với tên có trước Postman báo lỗi + Trạng thái trả 400 tức có lỗi xảy b) Kiểm tra hoạt động chức chỉnh sửa vai trò (update_role) Hình 22 Cập nhật vai trò thành công + Sau chọn phương thức PUT, điền đường dẫn kèm ID vai trò cần chỉnh sửa, sau điền thông tin cần sửa nhấn Send 37 + Ngồi việc đính kèm ID vào đường dẫn, thiết lập ID body Json, việc đảm bảo ID không bị bị nhìn thấy trường hợp bạn muốn giấu ID, tránh việc lộ liệu + Sau chỉnh sửa thành công, Postman trả thông báo chỉnh sửa thành cơng, thơng báo cần phải cấu hình trước + Trạng thái trả 200 tức thành công, không xảy lỗi Hình 23 Lỗi chỉnh sửa vai trị + Nếu khơng điền tên để update vai trị Postman báo lỗi + Trạng thái trả 400 tức có lỗi xảy 38 Hình 24 Lỗi chỉnh sửa vai trị + Nếu ID nhập vào đường dẫn khơng tồn tại, thơng báo khơng tìm thấy trả + Trạng thái trả 404 tức có lỗi xảy c) Kiểm tra hoạt động chức xóa vai trị Hình 25 Xóa vai trị thành công + Chọn phương thức DELETE cho hành động xóa, điền đường dẫn kèm ID vai trị cần xóa + Ngồi việc ID đính kèm vào đường dẫn, thiết lập ID body Json, việc đảm bảo ID khơng bị bị nhìn thấy trường hợp bạn muốn giấu ID, tránh việc lộ liệu + Sau xóa thành cơng Postman trả thông báo trạng thái 200 tức xóa thành cơng 39 Hình 26 Lỗi xóa vai trị + Nếu khơng tìm thấy ID phù hợp với ID nhập vào, thơng báo khơng tìm thấy trả + Trạng thái trả 404 tức có lỗi xảy 40 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ● Đạt được: - Nâng cao kỹ sử dụng ngơn ngữ lập trình Python - Biết cách sử dụng Git Github để quản lý mã cách hiệu khoa học - Phát triển thêm tư phân tích xây dựng hệ thống, thiết kế sở liệu - Học kỹ lên kế hoạch cách chi tiết cho công việc - Biết sử dụng Django để lập trình Back-End, làm chức đơn giản - Hiểu cách giao thức HTTP GET, POST, PUT, DELETE,… hoạt động - Biết cách viết API hoàn chỉnh sử dụng Json - Có thể viết tài liệu cho API - Có thể sử dụng Postman để test chức API ● Hạn chế: - Vì thời gian thực tập ngắn nên khơng có nhiều thời gian để học hết kỹ cần thiết - Hệ chức đề chưa thực hết thiếu thời gian kiến thức - Khả đọc tài liệu chậm dẫn đến trễ kế hoạch đề ● Hướng phát triển: - Hướng phát triển thân: sau q trình thực tập cơng ty học tập trường, nhờ dạy thầy cô người hướng dẫn cơng ty, em có định hướng nghề nghiệp cho thân Tiếp tục học tập rèn luyện, không ngừng trau dồi kiến thức để phát triển thành lập trình viên Back-End có kỹ kiến thức tốt 41 - Hướng phát triển đề tài: hạn chế thời gian thiếu sót kiến thức mà đề tài cịn nhiều tính cần thực trước trở thành phần mềm hồn chỉnh, với mơ hình erd database thiết kế tỉ mỉ, em tiếp tục học thêm kiến thức cần thiết để tiếp tục hoàn thành tính cịn lại để tạo phần mềm quản lý siêu thị mini ứng dụng tương lai 42 TÀI LIỆU THAM KHẢO mailto:https://200lab.io/blog/web-development-la-gi/ https://aws.amazon.com/vi/what-is/python/ https://docs.djangoproject.com/en/4.2/ 43 CHECK LIST CỦA BÁO CÁO STT Nội dung công việc Báo cáo trình bày (định dạng) với yêu cầu Báo cáo có số lượng trang đáp ứng yêu cầu (30-50 trang) Có x x Báo cáo trình bày phần mở đầu bao gồm: Mục tiêu, Phạm vi x đối tượng, kết cấu … Báo cáo trình bày cơng ty, vị trí việc làm (cơng việc làm gì, kiến thức kỹ cần thiết gì, đường phát triển x nghiệp (career path)), sở lý thuyết phù hợp với nội dung đề tài (Tối đa 10-12 trang) Báo cáo có sản phẩm cụ thể phù hợp với mục tiêu đặt đề x tài Báo cáo có phần kết luận hướng phát triển đề tài x 44 Không Ghi chú PHỤ LỤC 45

Ngày đăng: 12/12/2023, 19:47

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan