Hướng dẫn connect django to mysql
Sau khi chia sẻ một chút về CRUD với nodejs thì hôm nay, mình sẽ chia sẻ thêm một chút CRUD về python với Django sử dụng Mysql. Và tất nhiên nội dung cơ bản mình chia sẻ chỉ nằm trong phạm vi dành cho những người bắt đầu học python mà thôi. Show Trong bài viết này mình sử dụng Python 2.7.12, Django 1.11 có sử dụng Function views và Base views. Vì mình chỉ chia sẻ một số chức năng cơ bản nên có thể sẽ thiếu sót trong quá trình chạy project ví dụ như chưa có Authentication, validate cho form,... nên các bạn có thể tự tìm hiểu thêm )1. Khởi tạo project DjangoĐiều đầu tiên cần làm là khởi tạo 1 project, trong ví dụ này mình sẽ tạo 1 project tên là
Xong, chúng ta có cây thư mục như sau:
2. Cấu hình database MySqlMở file
Config xong, bạn cần migrate db bằng cách:
Và tạo một super user cho hệ thống của bạn:
Sau khi tạo
Xong, khởi đầu thành công với http://localhost:8000 3. Tạo module (app) mới.Tiếp theo cần tạo một module hay cũng có thể gọi là 1 app mới cho hệ thống để chúng ta có thể dễ dàng hơn cho việc triển khai chức năng CRUD. Ở đây sẽ tạo module cho đối tượng Post.
Chúng ta sẽ có cây thư mục như sau: Tiếp theo cần đăng ký cho module mới tạo vào trong hệ thống:
3.1. Cấu hình models
Sau lần lượt chạy:
Sẽ thấy:
Tieps theo là migrate:
4. CRUD4.1 List Post
Trong
Để sử dụng namespace trong python, thì cần thêm vào
Tiếp theo là template, ở đây mình sẽ hướng dẫn các bạn sử dụng layout luôn:
Và đến posts/list-posts.html
Như vậy là chúng ta đã có thể xem list các bài post rồi. Nhưng hiện tại vẫn chưa có dữ liệu. Nào, bắt đầu thêm dữ liệu nhé. 4.2 Create PostĐể tạo được bài post, đầu tiên chúng ta nên tạo 1 file gọi là
Và urls thêm:
Quay lại với file views
Và templates:
Thêm hàm
4.3 Update PostĐể update bài Post đã tạo, chúng ta lại bắt đầu từ
urls:
templates:
Sửa thêm nút edit vào trang list posts:
4.4 Delete PostĐối với chức năng xóa bài post, ở ví dụ này mình sẽ sử dụng Base View:
urls:
Thêm nút xóa:
Hiển thị thông báo xóa thành công ở layout:
5. DEMO
6. EndNhư vậy là chúng ta đã hoàn thành chủ đề CRUD cơ bản với Python sử dụng Django và MySql rồi. Hy vọng bài viết này sẽ một phần nào đó giúp các bạn hiểu hơn về python. Nếu thấy hay, hãy upvote, share để được đẹp trai và xinh gái hơn. |