Về Django
Django là một framework web cấp cao được viết bằng Python. Nó nhanh, đơn giản và tuân theo nguyên tắc DRY (Don’t Repeat Yourself), giúp nhà phát triển làm việc hiệu quả hơn. Django hỗ trợ ORM (Object-Relational Mapping) và sử dụng mô hình thiết kế MTV (Model-Template-View) thay vì MVC (Model-View-Controller).
Model: Đại diện cho cấu trúc cơ sở dữ liệu.
Template: Chứa HTML và Ngôn ngữ Mẫu của Django (DTL).
View: Hành động như một bộ điều khiển xử lý yêu cầu và phản hồi.
Cài đặt Môi trường
Để bắt đầu, bạn cần cài đặt Python và Pip. Nếu bạn sử dụng Ubuntu 24.04, hãy tham khảo hướng dẫn chi tiết này: cài đặt pip trên Ubuntu 18.04.
Cài đặt Python và Pip (sử dụng Python 3.7 trở lên).
Sử dụng django-environ để quản lý biến môi trường. Thêm file .env chứa thông tin nhạy cảm như mật khẩu cơ sở dữ liệu và cập nhật settings.py để đọc từ đó.
Tùy chỉnh Mô hình Người dùng
Tạo ứng dụng mới accounts và định nghĩa mô hình người dùng tùy chỉnh bằng cách mở rộng AbstractBaseUser.
Mô hình Danh mục và Sản phẩm
Định nghĩa danh mục và sản phẩm với các mối quan hệ hỗ trợ chức năng thương mại điện tử.
Đây là Phần 1 của việc xây dựng ứng dụng thương mại điện tử với Django, bao gồm thiết lập dự án, tích hợp cơ sở dữ liệu, cấu hình Docker, và xử lý tệp tĩnh cũng như media. Để cài đặt Python trên môi trường Ubuntu 24.04, tham khảo hướng dẫn: Cách cài đặt Python và Pip trên Ubuntu 24.04.
về việc học lên, thì a thấy nếu e sang sing thì bằng thạc sĩ ko có giá trị lắm, bên này người ta học thì học lên luôn PhD.
Cơ mà e đang làm engineering mà e đổi sang đi học lên thì thường là theo hướng research a thấy nó ko chắc có giá trị lắm cho profile của e đâu.
A thấy con đường "học để sang đc nước ngoài, ở đó và tìm việc" thường áp dụng cho mấy nước kiểu Mỹ các thứ. Chứ bên sing này a thấy họ ko care bằng cấp thạc sĩ/tiến sĩ lắm đâu nếu e làm engineering frontend, backend. Bên này e ưu tiên kinh nghiệm làm việc nhiều hơn e ạ
Em tốt nghiệp và đi làm 4 năm Java backend rồi
Anh cho em hỏi trình độ lập trình viên ở Singapore có sự chênh lệch nhiều so với Việt Nam không anh, và so về mặt ngôn ngữ thì ngôn ngữ nào đang có lợi thế về mặt tuyển dụng ở Singapore ạ
Em đang tính nếu không xin được job thì em sẽ đăng ký 1 khoá học, hoặc học lên thạc sĩ bên đấy để có cơ hội làm việc 1 thời gian sau khi học xong anh nghĩ sao về vấn đề này ạ
Mong anh giải đáp ạ
Tưởng bạn chia sẻ kinh nghiệm push app nhỏ mà dc PASS chứ, bị reject là chuyenj bthuong mà. Apple giờ nó review gắt hơn nữa. Những app nhỏ quá hoặc tính năng căn bản nó cũng ko cho pass.
App mình làm cũng tầm 6-7 screens, tính năng thì cũng có copy các app có sẵn + enhencement thêm 1 số thứ, nhưng khi review nó vẫn đánh giá app mình giống các app có sẵn, ko có gì đặc biệt, nó reject luôn. Haizz, không biết cãi sao luôn.
Bạn ơi cho mình hỏi cái chỗ này ý nghĩa là gì vậy: entities: ['dist/models/**/.entity{.ts,.js}'],
/.entity{.ts,.js} ý nghĩa là gì. cái file .entity là ở đâu vậy
không sao nhé, theo mình sử dụng thì nó còn tiện lợi ấy, bạn có thể lên đây để tìm các phiên bản phù hợp https://hub.docker.com/_/mysql/tags. Nếu bạn vẫn lo sợ dữ liệu bị mất đi thì bạn có thể tham khảo thêm việc dùng docker volume nhé.
Nếu mình sử dụng Docker thay thế mysql chạy trên local mà thực hành học tập được không bạn, mỗi lần chạy mình start container lên và connect , các cơ sở dữ liệu mình chạy trên container đó có bị mất đi mỗi lần chạy lại không
THẢO LUẬN
Hy vọng rằng bạn có thể mở rộng thêm các trường hợp sử dụng cụ thể của RAG trong các ngành nghề khách ví dụ như y tế, giáo dục....
Giới thiệu về Django và Khởi tạo Dự án
Về Django
Django là một framework web cấp cao được viết bằng Python. Nó nhanh, đơn giản và tuân theo nguyên tắc DRY (Don’t Repeat Yourself), giúp nhà phát triển làm việc hiệu quả hơn. Django hỗ trợ ORM (Object-Relational Mapping) và sử dụng mô hình thiết kế MTV (Model-Template-View) thay vì MVC (Model-View-Controller).
Cài đặt Môi trường
Để bắt đầu, bạn cần cài đặt Python và Pip. Nếu bạn sử dụng Ubuntu 24.04, hãy tham khảo hướng dẫn chi tiết này: cài đặt pip trên Ubuntu 18.04.
pipenv
:Cấu hình Cơ sở Dữ liệu
Cơ sở dữ liệu mặc định là SQLite3, nhưng bạn có thể chuyển sang MySQL.
mysqlclient
cho Python:DATABASES
trongsettings.py
:django-environ
để quản lý biến môi trường. Thêm file.env
chứa thông tin nhạy cảm như mật khẩu cơ sở dữ liệu và cập nhậtsettings.py
để đọc từ đó.Sử dụng Docker
Bạn có thể đóng gói ứng dụng bằng Docker.
Tạo file
Dockerfile
:Tạo file
docker-compose.yml
:Chạy các lệnh Docker:
Đảm bảo ứng dụng hoạt động tại http://127.0.0.1:8000.
Cấu hình Tệp Tĩnh và Media
Cấu hình tệp tĩnh (
settings.py
):Chạy:
Cấu hình Tệp Media:
Mô hình Người dùng Tùy chỉnh và Mô hình Cơ bản
Tùy chỉnh Mô hình Người dùng
Tạo ứng dụng mới
accounts
và định nghĩa mô hình người dùng tùy chỉnh bằng cách mở rộngAbstractBaseUser
.Mô hình Danh mục và Sản phẩm
Định nghĩa danh mục và sản phẩm với các mối quan hệ hỗ trợ chức năng thương mại điện tử.
Đây là Phần 1 của việc xây dựng ứng dụng thương mại điện tử với Django, bao gồm thiết lập dự án, tích hợp cơ sở dữ liệu, cấu hình Docker, và xử lý tệp tĩnh cũng như media. Để cài đặt Python trên môi trường Ubuntu 24.04, tham khảo hướng dẫn: Cách cài đặt Python và Pip trên Ubuntu 24.04.
@darkness5499 chúc e thành công và nhiều may mắn, 🥰
@maitrungduc1410 e cảm ơn chia sẻ của anh ạ, hẹn anh 1 ngày không xa ở Singapore ạ
về việc học lên, thì a thấy nếu e sang sing thì bằng thạc sĩ ko có giá trị lắm, bên này người ta học thì học lên luôn PhD.
Cơ mà e đang làm engineering mà e đổi sang đi học lên thì thường là theo hướng research a thấy nó ko chắc có giá trị lắm cho profile của e đâu.
A thấy con đường "học để sang đc nước ngoài, ở đó và tìm việc" thường áp dụng cho mấy nước kiểu Mỹ các thứ. Chứ bên sing này a thấy họ ko care bằng cấp thạc sĩ/tiến sĩ lắm đâu nếu e làm engineering frontend, backend. Bên này e ưu tiên kinh nghiệm làm việc nhiều hơn e ạ
a thấy dev Việt mình về trình độ ko kém gì nước ngoài luôn, kể cả Sing, chỉ là tiếng Anh kém thôi.
Các ngôn ngữ backend phổ biến thì a thấy có Java (Spring), Go. 2 cái này bên Sing rất được chuộng
Em tốt nghiệp và đi làm 4 năm Java backend rồi Anh cho em hỏi trình độ lập trình viên ở Singapore có sự chênh lệch nhiều so với Việt Nam không anh, và so về mặt ngôn ngữ thì ngôn ngữ nào đang có lợi thế về mặt tuyển dụng ở Singapore ạ Em đang tính nếu không xin được job thì em sẽ đăng ký 1 khoá học, hoặc học lên thạc sĩ bên đấy để có cơ hội làm việc 1 thời gian sau khi học xong anh nghĩ sao về vấn đề này ạ Mong anh giải đáp ạ
@longtth à à = ))) bạnn viết thế thì ai hiểu được, phải trích dẫn hoặc mô tả vấn đề đang trả lời vào reply chứ = ))
Anh An 10đ
bài viết này chuẩn không bác, e cấu hình cả .well-known/apple-app-site-association mà vẫn không được nhỉ
bài hay, dễ hiểu, cảm ơn bạn
Tưởng bạn chia sẻ kinh nghiệm push app nhỏ mà dc PASS chứ, bị reject là chuyenj bthuong mà. Apple giờ nó review gắt hơn nữa. Những app nhỏ quá hoặc tính năng căn bản nó cũng ko cho pass. App mình làm cũng tầm 6-7 screens, tính năng thì cũng có copy các app có sẵn + enhencement thêm 1 số thứ, nhưng khi review nó vẫn đánh giá app mình giống các app có sẵn, ko có gì đặc biệt, nó reject luôn. Haizz, không biết cãi sao luôn.
Bạn ơi cho mình hỏi cái chỗ này ý nghĩa là gì vậy: entities: ['dist/models/**/.entity{.ts,.js}'], /.entity{.ts,.js} ý nghĩa là gì. cái file .entity là ở đâu vậy
Hay qúa
Rảnh rỗi ôn lại tý kiến thức thôi sếp ah 😅
có thiếu bước kết nói với elastic không bác. sao e làm y hệt mà không được
không sao nhé, theo mình sử dụng thì nó còn tiện lợi ấy, bạn có thể lên đây để tìm các phiên bản phù hợp https://hub.docker.com/_/mysql/tags. Nếu bạn vẫn lo sợ dữ liệu bị mất đi thì bạn có thể tham khảo thêm việc dùng docker volume nhé.
xịn quá bro
Nếu mình sử dụng Docker thay thế mysql chạy trên local mà thực hành học tập được không bạn, mỗi lần chạy mình start container lên và connect , các cơ sở dữ liệu mình chạy trên container đó có bị mất đi mỗi lần chạy lại không
Hay quá. Cảm ơn anh đã dịch lại bài này ạ