Tôi muốn tạo mô hình không ánh xạ tới bảng cơ sở dữ liệu. Thay vào đó, hãy ở trong bộ nhớ như một đối tượng python.cách tạo mô hình Django không ánh xạ tới bảng cơ sở dữ liệu
Thực ra, mô hình này được cho là đại diện cho dữ liệu được chuẩn hóa từ nhiều mô hình bảng được ánh xạ khác.
Các mô hình khác lưu trữ dữ liệu có thể được chỉnh sửa nhiều lần trong một ngày. Bởi vì nhiều chỉnh sửa này, tôi không muốn một mô hình bảng ánh xạ thực hiện các phép tính bình thường/tính toán và lưu trữ chúng trong cơ sở dữ liệu, dữ liệu được lưu trữ này có thể lỗi thời ngay lập tức.
Mỗi lần mô hình chuẩn hóa này được truy cập (qua quản trị viên), tôi muốn nó thực hiện bình thường trên dữ liệu từ các mô hình khác từ đầu (để nó có thể hiển thị dữ liệu cập nhật nhất) và hoạt động giống như bình thường mô hình sẽ dưới quyền quản trị như Hiển thị chế độ xem danh sách và chế độ xem chi tiết cho mỗi hàng.
Chỉnh sửa sau khi trả lời Thần đạo của:
@Shintoist Cảm ơn đã thanh toán bù trừ những điều trên và cung cấp một cách tiếp cận sử dụng được. Tôi vừa mới triển khai nó nhưng đánh một bức tường nhỏ cuối cùng :)
@skirmantas: Có, các tính toán nằm trong một đối tượng riêng biệt. Đối tượng này đang được chuyển vào chế độ xem tùy chỉnh.
Vấn đề: Một vấn đề là dưới admin.py, tôi đã tạo một mô hình lớp cho đối tượng này (không kế thừa mô hình.Model) để chế độ xem tùy chỉnh của tôi có thể thay đổi chế độ xem và thay đổi của danh sách thay đổi. Sau đó, tôi sử dụng admin.site.register() để đăng ký lớp mô hình này và modeladmin. Nhưng, kể từ khi mô hình này không phải là một mô hình django ở tất cả (vì nó là một đối tượng python độc lập trong bộ nhớ) admin.site.register() ném một "loại" đối tượng không thể lặp lại "lỗi. Tôi không muốn sử dụng url.py thay vì admin.py vì nó có nghĩa là cho giao diện người dùng trong khi Im đang cố gắng quản lý chương trình phụ trợ.
Tôi hiểu bạn muốn sử dụng quản trị viên, nhưng đối với nhu cầu của bạn, đó là cách thực hiện rất vòng quanh. Bạn có thể không chỉ ghi đè lên mẫu quản trị với một liên kết ở đâu đó trên trang tới url sử dụng chế độ xem bạn đã viết không? Bằng cách đó nó sẽ là "trong" admin. Django sẽ tự động tìm kiếm các mẫu ghi đè các nội dung được tạo sẵn. Nếu không tôi đề nghị bạn đi với giải pháp của Tomasz Zielinski. –
@tomas. Nếu tôi tạo mô hình bình thường hóa để ánh xạ tới một bảng trong bộ nhớ, nó sẽ không tĩnh. Ý tôi là, mô hình khi được mở, tìm nạp dữ liệu mới nhất từ các mô hình khác, bình thường hóa/xử lý dữ liệu đó và hiển thị một danh sách. Bây giờ trong thời gian có nghĩa là, nếu ai đó chỉnh sửa các mô hình khác, các mô hình này sẽ không hiển thị trong mô hình chuẩn hóa cho đến khi máy chủ khởi động lại (sẽ tải lại bảng bộ nhớ). – sysasa
Tôi cũng muốn thêm, thực hiện django của tôi đã sử dụng ba cơ sở dữ liệu, một dữ liệu kế thừa (để tôi có thể di chuyển nó sang hệ thống mới), một SQLlite để chạy thử nghiệm thông qua đồ đạc và thứ ba, cơ sở dữ liệu chính. Điều này cũng có nghĩa là, tôi sẽ thêm một cơ sở dữ liệu thứ tư chỉ vì một mô hình. – sysasa