Hướng dẫn flask connect to mongodb - bình kết nối với mongodb
Cách thiết lập bình với MongoDB Show
Flask là một khung Python được áp dụng rộng rãi để xây dựng các ứng dụng web. Nó cho phép các nhà phát triển Python sử dụng ngôn ngữ ưa thích của họ với tất cả các tài sản của mình trong khi xây dựng các ứng dụng web Python có thể mở rộng và nhanh để bắt đầu. MongoDB Atlas là nền tảng cơ sở dữ liệu của MongoDB, cho phép các nhà phát triển linh hoạt làm việc với dữ liệu phức tạp trong khi phát triển nhanh hơn bao giờ hết. Nền tảng MongoDB Atlas rất đơn giản để thiết lập và mở rộng, làm cho nó trở thành cơ sở dữ liệu hoàn hảo cho các ứng dụng web. Việc tích hợp ứng dụng bình với MongoDB tạo ra một ngăn xếp ứng dụng mạnh mẽ và có thể mở rộng. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách kết nối ứng dụng bình của bạn với MongoDB Atlas. Hỗ trợ pymongo cho bìnhPymongo là người lái xe MongoDB chính thức cho Python. Bất kỳ ứng dụng Python nào cũng có thể tiêu thụ trình điều khiển pymongo bằng cách nhập nó và sử dụng thể hiện Mongoclient. Các ứng dụng bình có thể tận dụng Pymongo để truy cập cơ sở dữ liệu Atlas MongoDB của chúng tôi. Vì Flask là tất cả về việc cải thiện trải nghiệm của nhà phát triển khi phát triển các ứng dụng web, cộng đồng đã tạo ra một người trợ giúp được áp dụng rộng rãi có tên là Flask-Pymongo, một người bao bọc xung quanh Pymongo, được tích hợp chặt chẽ với bình. Bài viết này sẽ sử dụng khung này để làm việc với cụm cấp miễn phí có sẵn trong Atlas MongoDB, cho phép bạn thử ngăn xếp này miễn phí. Bắt đầu với Flask-PymongoỨng dụng Mflix là một ứng dụng duyệt phim ví dụ được biết đến trên Đại học MongoDB. Toàn bộ dự án mẫu được đặt trong repo GitHub-pymongo-ví dụ MongoDB của chúng tôi. Bạn có thể sao chép dự án này và khám phá README để thiết lập ứng dụng demo của bạn hoặc theo dõi bài viết này khi chúng tôi đi qua các yếu tố cần thiết của dự án này. Để giới thiệu một ví dụ ứng dụng bình được tích hợp với Atlas, chúng tôi sẽ sử dụng cơ sở dữ liệu sample_mflix trong bộ dữ liệu mẫu MongoDB Atlas. Mặt tiền của ứng dụng Mflix MFLIX sẽ sử dụng thư viện Flask-Pymongo, khám phá các hoạt động tạo, đọc, cập nhật và xóa (CRUD) cơ bản cùng với tìm kiếm và tập hợp văn bản.sample_mflix database in the MongoDB Atlas sample dataset. The facade of “mflix” application will use Flask-PyMongo library, exploring the basic Create, Read, Update, and Delete (CRUD) operations together with text search and aggregations. Dự án này sử dụng một lớp UI trong một mặt trước của ReactJS và một ứng dụng bình Python để lưu trữ phần đầu và API back-end để truy cập vào cơ sở dữ liệu phim. Cấu trúc dự ánThư mục 5 giữ logic ứng dụng. Điêu nay bao gôm:
Thư mục chính chứa các tệp sau:
Cách lắp bình với pymongoDự án sử dụng tệp yêu cầu cài đặt PIP tiêu chuẩn liệt kê phiên bản mới nhất của các phụ thuộc cần thiết: requirements.txt
Những người đó sẽ cho phép chúng tôi kết nối phiên bản ứng dụng Flask với máy khách Pymongo sử dụng Trình trợ giúp Flask-Pymongo, như được đặt trong tệp DB.Py:
Mã trên khởi tạo một đối tượng DB DB toàn cầu khi sử dụng Mongo_uri đọc từ tệp .ini:
Chúng tôi sẽ thay thế tệp mẫu mẫu_ini bằng chuỗi kết nối cụm Atlas có liên quan:
Nhận chuỗi kết nối của bạnĐể tạo máy khách, bạn sẽ cần truyền chuỗi kết nối để truy cập cơ sở dữ liệu của bạn. Chuỗi kết nối có thể được tìm thấy trong Atlas UI. Các bước sau đây sẽ chỉ cho bạn cách lấy chuỗi kết nối của bạn:
Bắt đầu ứng dụngLàm việc với các môi trường ảo trong Python là một thực tiễn tốt, vì vậy đối với ứng dụng ví dụ của chúng tôi, hãy để tạo ra một cái tên 1:
Cài đặt phụ thuộc:
Chỉnh sửa Sample_ini để có chuỗi kết nối Atlas của bạn:
Đổi tên Sample_ini thành tệp .ini:
Bắt đầu ứng dụng:
Điều này sẽ xuất các thông báo bảng điều khiển về khởi động máy chủ và trạng thái của nó. Ứng dụng của bạn phải có sẵn thông qua trình duyệt trên http: // localhost: 5000. Cách lưu trữ dữ liệu bằng pymongo và bìnhTất cả các truy cập cơ sở dữ liệu được định tuyến thông qua đối tượng DB DB toàn cầu sẽ khởi tạo máy khách pymongo. Đối tượng biến đặc biệt, G G G được sử dụng ở đây để xác định cơ sở dữ liệu pymongo trong bối cảnh ứng dụng toàn cầu.
Trong MongoDB, thông tin được lưu trữ trong các tài liệu BSON. BSON là một cấu trúc nhị phân, giống như JSON. Nó hỗ trợ các loại dữ liệu giống như JSON với một vài tính năng bổ sung như ngày, nhị phân thô, cũng như nhiều loại số như số nguyên, dài và float. Một bộ sưu tập là những gì MongoDB gọi là một nhóm tài liệu trong một container. Hãy cùng bao gồm các hoạt động tạo, đọc, cập nhật và xóa cơ bản. Tạo raViệc tạo tài liệu có thể được thực hiện thông qua đối tượng thu thập và phương thức chèn_one. Hãy xem xét chức năng của add add_comment: 0Hàm trên nhận các thuộc tính nhận xét và chèn một tài liệu vào bộ sưu tập bình luận. ĐọcĐọc trong MongoDB có thể được thực hiện thông qua truy vấn bằng Find hoặc Find_OneWhich trả về một con trỏ tài liệu hoặc một tài liệu duy nhất tương ứng. Một tùy chọn khác là sử dụng các tập hợp để thực hiện tìm kiếm hoặc tái cấu trúc dữ liệu phức tạp hơn. Để biết thêm thông tin về tập hợp, xem tài liệu này. Truy vấn ứng dụng của chúng tôi có thể lọc phim bằng cả phương thức tìm và tổng hợp: Tìm trong 1Phương thức Find đang tìm kiếm bộ sưu tập phim và cung cấp một tiêu chí truy vấn và sắp xếp tài liệu dựa trên đầu vào của người dùng. Xem mã này trong tệp db.py. Tổng hợp trong 2Tổng hợp thư giãn mảng thể loại trong mỗi tài liệu và tính toán một danh sách riêng biệt các thể loại có thể. Cập nhậtĐể cập nhật tài liệu, một đối tượng thu thập có thể sử dụng phương thức update_one. Trong ví dụ của chúng tôi, chúng tôi cung cấp một bộ lọc và các giá trị được cập nhật cho văn bản và ngày nhận xét: 3Xóa bỏĐể xóa một tài liệu, một đối tượng thu thập có thể sử dụng phương thức Delete_one. Trong ví dụ của chúng tôi, chúng tôi cung cấp một bình luận để xóa nó: 4Cái gì tiếp theo?Flask, Pymongo và MongoDB Atlas cung cấp một ngăn xếp tuyệt vời để xây dựng các ứng dụng Python web của bạn và dễ dàng mở rộng và lưu trữ chúng. Sử dụng hướng dẫn này, bạn có thể bắt đầu xây dựng ứng dụng của riêng mình ngay hôm nay với MongoDB Atlas. Câu hỏi thường gặpTôi có thể sử dụng MongoDB với bình không?Bình được sử dụng để làm gì trong Python?Làm thế nào để bạn sử dụng MongoDB với bình python?Làm thế nào để bạn cài đặt Flask-Pymongo?Làm thế nào để bạn sử dụng pymongo trong Python? |