Hướng dẫn python upload file - tệp tải lên python
Ghi chúNội dung bài viết bạn đang xem được update từ tháng 06/2019. Vì vậy sẽ có đôi chút khác biệt giữa VIDEO và NỘI DUNG BÀI VIẾT.update từ tháng 06/2019. Vì vậy sẽ có đôi chút khác biệt giữa VIDEO và NỘI DUNG BÀI VIẾT. Show Chúng ta sẽ có nhiều cập nhập hơn về cả bài viết lẫn video trong thời gian tới. Nhớ like / share hoặc đánh giá 5 sao để Kteam có động lực nhé! like / share hoặc đánh giá 5 sao để Kteam có động lực nhé! Cảm ơn các bạn! Dẫn nhậpỞ bài trước, Kteam đã hướng dẫn các bạn xong DJANGO SỬ DỤNG MÔ HÌNH MVC Trong bài này Kteam hướng dẫn cách upload file ảnh vào trang web được làm bằng Django MVC. upload file ảnh vào trang web được làm bằng Django MVC. Nội dungĐể theo dõi bài này tốt nhất, bạn nên xem qua bài:
Bài này sẽ giới thiệu những nội dung sau:
Tạo thêm field models để chứa thông tin file ảnhTrước tiên, hãy nhớ chuyển DEBUG = TRUE để tiếp tục phát triển website.DEBUG = TRUE để tiếp tục phát triển website. Bây giờ, Kteam muốn mỗi bài viết sẽ có 1 bức ảnh đại diện mỗi bài, nên Kteam sẽ vào models chỉnh Post thêm field image như sau:models chỉnh Post thêm field image như sau:
Ở đây thì Kteam cho phép field có giá trị null, nguyên nhân là trong các bài trước Kteamđã lỡ tạo 2 bài viết, nếu bây giờ không cho phép null thì sẽ dính lỗi logic vì 2 bài viết trước đó không có ảnh. Nếu không có null thì sẽ hiện lỗi như sau:field có giá trị null, nguyên nhân là trong các bài trước Kteamđã lỡ tạo 2 bài viết, nếu bây giờ không cho phép null thì sẽ dính lỗi logic vì 2 bài viết trước đó không có ảnh. Nếu không có null thì sẽ hiện lỗi như sau: Lúc đó, nên chọn 2 thoát ra và chỉnh field mới làm cho phép null.field mới làm cho phép null.
Sau khi tạo được file migrations, thì dùng lệnh migrate để cập nhật là Database:file migrations, thì dùng lệnh migrate để cập nhật là Database: Cách lưu trữ ảnh đã uploadGiờ ta thử vô admin, vào post và upload 1 file ảnh lên:admin, vào post và upload 1 file ảnh lên: Sau khi upload xong, thử nhấn đường dẫn đến bức ảnh đã upload xem: Ta sẽ thấy Django sẽ không hiểu được đường dẫn web đó Giờ ta thử quay lại Project để xem bức ảnh đó ở đâu:Project để xem bức ảnh đó ở đâu: Ta sẽ thấy bức ảnh ngay trong project, có lẽ không nên để bức ảnh lộn xộn như vậy mà nên tập trung vào 1 folder lưu trữ.project, có lẽ không nên để bức ảnh lộn xộn như vậy mà nên tập trung vào 1 folder lưu trữ. Nguyên nhân lỗi ở trên là do Django không thể map đường url bức ảnh và folder chứa ảnh đó. Nhiệm vụ của chúng ta là nên map 2 cái đó lại để Django biết url này nên lấy bức ảnh nào.Django không thể map đường url bức ảnh và folder chứa ảnh đó. Nhiệm vụ của chúng ta là nên map 2 cái đó lại để Django biết url này nên lấy bức ảnh nào.
Sau khi restart server, ta thử vào lại đường dẫn hình:restart server, ta thử vào lại đường dẫn hình: Ta thấy Django đã có đường dẫn /media/ và nó có thể lấy bức ảnh 1.jpg tương ứng đường dẫn /media/1.jpg./media/ và nó có thể lấy bức ảnh 1.jpg tương ứng đường dẫn /media/1.jpg. Lưu ý: Nếu upload file trùng tên với một file đã có trong kho lưu trữ thì Django sẽ tự tạo 1 đoạn mã sau để phân biệt, Kteam sẽ upload chung 1 file ở bài viết thứ 2file trùng tên với một file đã có trong kho lưu trữ thì Django sẽ tự tạo 1 đoạn mã sau để phân biệt, Kteam sẽ upload chung 1 file ở bài viết thứ 2 Hiển thị ảnh lên trang webNhư vậy, sau khi upload xong, Kteam sẽ hiển thị bức ảnh đó ở mỗi bài viết như sau:
Kteam sẽ phải dùng post.image.url để lấy được giá trị đường dẫn url bức ảnh rồi gán mà src của tag img.image.url để lấy được giá trị đường dẫn url bức ảnh rồi gán mà src của tag img. KếtTrong bài này, chúng ta đã tìm hiểu cách Upload File trong lập trình Website với Python. Bài sau chúng ta sẽ cùng tìm hiểu về cách TẠO FORM ĐĂNG KÝ TÀI KHOẢN. Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Và đừng quên “Luyện tập – Thử Thách – Không ngại khó”Luyện tập – Thử Thách – Không ngại khó” Thảo luậnNếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng. |