2010-08-17 34 views
19

Tôi đang xây dựng một dịch vụ URL ngắn đơn giản, một chút, để sử dụng cho công ty của chúng tôi. Và tôi muốn sử dụng mongodb để lưu trữ dữ liệu, nhưng tôi sẽ cần một số loại giao diện đơn giản để thêm/chỉnh sửa url ngắn để ánh xạ url dài.Quản trị viên Django và MongoDB, có thể không?

Các văn bản Mongo sẽ rất đơn giản, một cái gì đó như thế này:

{ 
    shortUrlSlug: 'pbbs', 
    fullUrl: 'http://example.com/peanut/butter/and/bacon/sandwiches/' 
} 

Có bất cứ điều gì ngoài kia đó cho thấy nhiều giao diện "CRUD" admin đơn giản để MongoDB, có thể được tích hợp với django, nơi bạn có thể chỉ định mô hình?
Về cơ bản giống như quản trị viên django, nhưng không yêu cầu cơ sở dữ liệu SQL.

Cảm ơn!

Trả lời

11

Tôi đã xác nhận rằng dự án django-nonrel không hỗ trợ giao diện quản trị. Tôi đã có một vấn đề mà SITE_ID mặc định đã được chọn như một số, mà không được phép như là một khóa chính trong MongoDB. Tôi giải quyết này bằng cách thiết lập:

SITE_ID = '4d421623b0207acdc500001d'

trong settings.py tôi

tôi có số lượng bằng cách in id của giá trị trang web đầu tiên trong bộ sưu tập thông qua vỏ.

Tôi chưa thử nghiệm rộng rãi, nhưng đã đăng ký quản trị viên cho đối tượng Thăm dò ý kiến ​​và thấy nó hoạt động.

+2

Điều này hoàn toàn hoạt động. Chỉ cần khởi động trình bao mongo, thực hiện "db.django_site.find()" và sử dụng giá trị ObjectId từ kết quả dưới dạng giá trị cho SITE_ID trong settings.py của bạn. –

+0

Nếu bạn không cần trang web, tùy chọn xóa nó khỏi ứng dụng đã cài đặt cũng sẽ thực hiện công việc – c24b

9

Tôi đã sử dụng django-nonrel với mongodb-engine và hoạt động tốt. Quản trị Django cũng hoạt động với các trường mô hình chuẩn. Nhưng nếu bạn đang sử dụng listfield và dictfield, bạn sẽ cần phải làm một số hack.

-1

MongoDB có nhiều hành vi và django-admin là dành cho cơ sở dữ liệu quan hệ như postgresql

bạn có thể tạo django admin với django-nonrel nhưng nó không tối ưu hóa và tốt. tôi nghĩ rằng bạn sẽ tạo ra bettwr tùy chỉnh admin cho ứng dụng của bạn.

1

Đây là một câu hỏi cũ nhưng nếu ai đó xảy ra phải đối mặt với cùng một vấn đề ngày hôm nay, tôi nghĩ rằng đặt cược tốt nhất của mình sẽ là http://humongous.io. Đó là một giao diện giống như django-admin cho mongoDB. Nó biết làm thế nào để đoán/đối phó với các mối quan hệ và hoạt động khá nhiều như quản trị Django.

0

Quản trị Django là rất có thể với MongoDB. Bạn đã xem xét dự án Djongo chưa?

Djongo là trình biên dịch truy vấn SQL đến MongoDB. Nó dịch tất cả chuỗi truy vấn SQL thành tài liệu truy vấn mongoDB. Kết quả là,

  • Tất cả mô hình Django và mô-đun liên quan hoạt động như cũ.
  • Sử dụng GUI quản trị Django để thêm tài liệu được nhúng MongoDB.
  • Djongo cung cấp các phần mở rộng API cho ORM Django cho phép bạn 'nhúng' một tài liệu bên trong một tài liệu khác, như MongoEngine.

Có một bài viết trên Using Django with MongoDB bằng cách thêm chỉ một dòng mã, nếu bạn đang tìm thêm thông tin. Nếu không, bạn có thể chuyển trực tiếp vào djongo documentation và bắt đầu sử dụng nó.

Các vấn đề liên quan